WP – Ähnliche Artikel (Plugin)

Die Zeiten ändern sich.

Dieser Beitrag scheint älter als 18 Jahre zu sein – eine lange Zeit im Internet. Der Inhalt ist vielleicht veraltet.

Immer wieder bekomme ich Mails mit der Anfrage bei der Einrichtung des Plugins „Related Entries“ von Alexander Malov. Deshalb habe ich mich entschlossen, hier kurz zu erläutern, wie man dieses schöne Plugin einrichtet, was an sich sehr einfach ist.

Durch die Verwendung des Plugins werden ähnliche Beiträge automatisch ausgelesen und angezeigt. Händische Pflege ist nicht notwendig.

Anforderungen:

WP-Related-Entries arbeitet mit WP 1.5 und höher.

Installation:

  1. Download des Zip-Dokumentes, aktuellste Version, bei Alexander Malov
  2. Das Archiv lokal entpacken.
  3. Die enthaltene Datei: related-posts.php in euren WP-Plugin-Ordner kopieren. /wp-content/plugins/
  4. Nun in die Administration eurer Datenbank gehen. Mehr Infos bekommt ihr dazu von eurem Webspaceanbieter. Dort muss in der Tabelle wp_posts zwei neue Felder erzeugt werden. Wenn ihr bei der Installation eures WordPress die Tabellennamen nicht geändert habt, dann nutzt folgenden Code. Der Code ist eine SQL-Anweisung umd muss über die Databank-Administration eingeben werden – bie den meisten Anbietern steht dafür das Tool phpMyAdmin zur Verfügung, mit dem dies auch wunderbar zu machen ist.
    
    ALTER TABLE `wp_posts` ADD FULLTEXT `post_related` (
        `post_name` ,
        `post_content`
    )
    

    Es wird also der Schlüssel post_related hinzugefügt.

    Achtung:

    Solltet ihr den Präfix „wp“ bei euch verändert haben, dann müsst ihr natürlich den Code anpassen. Tauscht also im Code, von Punkt 4, wp_posts mit eurem Präfix aus. Bsp.: Präfix_posts

  5. Nun müsst ihr natürlich die Funktion in eurer Template integrieren. Hier bietet sich natürlich die single.php an, in der die Artikel ausgegeben werden. Wechselt in eure WP-Admin-Oberfläche –> Themes –> Theme-Editor –> Post Template. Fügt den folgenden Code an die Stelle ein, wo ihr später die Ausgabe der ähnlichen Beiträge haben wollt.
    
    <?php related_posts( Parameter ); ?>
    

    Beispiel:
    In meinem Fall nutze ich folgenden Code:

    
    <h2>&auml;hnliche Betr&auml;ge</h2>
    <ul>
     &lt;?php related_posts(5, '0', '&lt;li&gt;', '&lt;/li&gt;'); ?&gt;
    </ul>
    

    Parameter:

    
    <?php related_posts($limit, $len, '$before_title', '$after_title',
     '$before_post', '$after_post', $show_pass_post, $show_excerpt); ?>
    
    • $limit – Limit der Anzeige
    • $len – Länge der Ausgabe von Beitragstexten
    • $before/after_title – Text vor/nach dem Titel
    • $before/after_post – Text vor/nach dem Beitragstext
    • $show_pass_post – Ausgabe incl. passwortgeschützer Seiten (false als Standartwert
    • $show_excerpt – Ausgabe des Beitragstextes
  6. Nun muss das Plugin natürlich noch aktiviert werden, in eurer WP-Admin-Oberfläche –> Plugins.

Von Frank Bültge

bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.

43 Kommentare

  1. Hey Frank,

    wenn ich das Plugin nach DB Update aktiviere und den PHP Code in die „single.php“ einfüge bekomm ich folgende Fehlermeldung:

    WordPress database error: [You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near “ at line 1]
    SELECT ID, post_title, post_content,MATCH (post_name, post_content) AGAINST (‚blogger portal offline‘) AS score FROM wp_posts WHERE MATCH (post_name, post_content) AGAINST (‚blogger portal offline‘) AND post_date

  2. Hey Frank, mein problem mit diesen Plugin habe ich gelöst bekommen..

    da in denien beitrag (sofern ich das nicht übersehen hab) stand nix davon das man auch einstellungen vor nehmen kann.

    Nun läuft es..

  3. Hi, habe dieses Plugin installiert und es funktioniert auch.
    Was mich brennend interessiert ist, wie ich die 5 ähnlichen beiträge nicht inline sondern unter einander angezeigt bekomme
    danke dir schonmal…

  4. Hallöchen,

    habe folgendes Problem und hoffe du kannst helfen.

    Nach Anleitung alles eingefügt und trotzdem erscheint folgende Fehlermeldung im Content:

    WordPress database error: [You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near “ at line 1]
    SELECT ID, post_title, post_content,MATCH (post_name, post_content) AGAINST (’schnitzel schmoecken‘) AS score FROM wp_posts WHERE MATCH (post_name, post_content) AGAINST (’schnitzel schmoecken‘) AND post_date

  5. Hallo Chris,
    deine Datenbankabfrage ist fehlerhaft. Prüfe, ob es die beiden Felder gibt und ob die SQL-Abfrage auch im Pluign richtig ist, hier ist besonderes Augenmerk auf den Präfix (standard ist wp_) der Tabelle zu legen.
    LG Frank

  6. Die Sache mit dem „error in your SQL syntax“. Ich habe auch ewig gesucht bis ich gemerkt habe, dass es unter Plugins einen Punkt „Related Posts Options“ gibt. Mit der Erkenntnis geht auch der „Fehler“ weg. 😉

  7. hi!
    ich versteh leider nicht, was du mit:
    Wenn ihr bei der Installation eures WordPress die Tabellennamen nicht geändert habt, dann nutzt folgenden Code.
    ALTER TABLE `wp_posts` ADD FULLTEXT `post_related` (
    `post_name` ,
    `post_content`
    )
    Wo kommt denn das hin? sorry..bin rookie!
    ich warte gespannt auf antwort!
    gruß
    k.y.

  8. Hallo ken,
    dies ist ein SQL-Anweisung und du benötigst ein Tool, um diese in der Datenban kauszuführen, in der Regel stellen die Webspace-Anbieter dafür phpMyAdmin zur Verfügung.

  9. Hallo, ich kann Related Entries irgendwie nicht installieren,
    in der readme steht.

    b) If automatic creation of a full text index fails. You will have to set it up manually. Don’t worry it’s not hard. Just open your database in phpMySQLadmin and run the following command (cut & paste):

    ALTER TABLE `wp_posts` ADD FULLTEXT `post_related` (
    `post_name` ,
    `post_content`
    )

    wenn ich das aber mache, sagt php-myadmin:

    Fehler

    SQL-Befehl:

    ALTER TABLE `wp_posts` ADD FULLTEXT `post_related` (
    `post_name` ,
    `post_content`
    )

    MySQL meldet:
    #1061 – Duplicate key name ‚post_related‘

    mach ich was falsch?

  10. Könnte es sein, dass der Download-Link nicht funktioniert? Ich versuche schon seit zwei Wochen, die Seite wird nicht gefunden.

  11. hi zusammen,
    eine frage habe ich zu dem plugin. wird der blog von mehreren autoren genutzt, so sehen alle mit der user role „contributor“ den tab „plugins“ und können dort die optionen des plugins ändern. das ist ärgerlich. dachte ich mir ok, ändere ich das in der *.php datei des plugins. dort stehen folgende zeilen (zeile 20-21):

    if ($user_level

  12. Irgendwie sind die Keywords nicht so aussagekräftig. Wie kann man denn die Abfrage auf die Tags (ab WP 2.3) erweitern? Das wäre mal eine gelungene Sache. LG aus Berlin

  13. Kann Simple Tags dies nicht ersetzen, das konnte das doch bisher. Ansonsten mal die Plugin-DB durchforsten, es gibt sicher für WP 2.3* auch ein Plugin dieser Art.

  14. Hi Frank, habe mich mal auf die Suche begeben und bin fündig geworden!!! Mit diesem plugin wird genau das gemacht, was ich mir wünsche: http://fairyfish.net/2007/09/12/wordpress-23-related-posts-plugin/

    Es verwendet die hauseigene Tagfunktion ab 2.3 zur related post Ausgabe UND macht sogar optional noch ´ne nette Kommentar bzw. Datumsanzeige davor / dahinter. Man spart sozusagen 1 plugin ein (bspw. simple tagging etc.).

    Bei related posts hat mir die Meta-Key Analyse nicht gepasst. Ich habe soviele Artikel, von denen ich weiß, dass sie identische Wörter beinhalten und es hat nicht geklappt. Jeder 2. hatte angeblich keine Verbindung. Das hat mich gestört.

    LG aus Berlin – vielleicht ist dieses relativ neue pluggi ja bei Dir einen Eintrag wert. Deine Seite ist übrigens der hammer. Habe gestern die ganze Nacht Deine Beiträge gelesen und meinen Blog optimiert … und bin immer noch dabei 🙂

  15. Wenn du die ganzen Zusatzfunktionen nicht benötigst, dann sende ich dir gern eine functions.php für das Theme. Dann muss die Funktion nur in das Template integriert werden. Habe mir die Funkion gerade erstellt, weil ich sie für das ©Feed haben will.

  16. Welche Zusatzfunktionen meinst Du? Bei dem neuen Plugin? Oder von etwas anderem? Falls Du mit Bordmitteln diese Tag-Realtionen auch herstellen kannst, bin ich natürlich sehr interessiert. Je weniger plugins, desto höher die performance (insofern man das bei Strato überhaupt sagen darf bei Shared Servern). LG, Daniel

  17. Naja, ich meine so Funktionen wie Kommentarcounter, Überschrift und anpassbar per Adminbereich. Ich habe lediglich die Funktion im Theme integriert, bei mir im Blog zu sehen, und bringe h3 und Formatierung via Theme ein.

  18. Ja, exakt sowas bräuchte ich auch. Die Optionen legt man ohnehin nur 1x fest. Bitte schicke mir mal die funktion – würde mich freuen! Gruß aus Berlin

  19. Vielen Dank für das Material! Mittlerweile läuft alles per code-Schnipsel wunderbar 🙂 Für alle anderen, die sich auch dafür interessieren habe ich ein kleines Tutorial geschrieben „related posts per tag-Funktion“

    http://www.danieljaeger.de/?p=138

    Deine Arbeit ist natürlich als Referenz dabei ausgewiesen.

    P.S. Eventuell kannst Du das ja noch diesem Beitrag als „update“-Zeile hinzufügen. Würde mich freuen.

    LG aus Berlin

Kommentare sind geschlossen.