Ähnliche Artikel – 2 weitere Möglichkeiten

Ähnliche Artikel anhand der Tags /Keywords oder aus derselben Kategorie für WordPress. Und das Plugin Other Posts kann sogar Bilder dazu anzeigen.

Ähnliche Artikel mit Bild
 ähnliche Artikel in WordPress

Ich glaube man kann nie genug Möglichkeiten haben “ähnliche Artikel” am Ende eines Artikels anzuzeigen. Bei meinen Streifzügen durch die Weiten des WWW fand ich wiederum zwei Möglichkeiten diese ähnlichen Artikel zu holen.

Ähnliche Artikel mit Bild und Auszug

Other Posts von Stephan Lissa heißt das einfache Plugin mit dem man folgendes einstellen und frei gestalten kann:

  • den HTML Output
  • mit Bild
  • mit Link zum Artikel
  • Kurzer Textauszug

Ich musste bei dem Plugin folgende Zeile auskommentieren, vorher hat es mir keine Bilder angezeigt.

Suche nach folgender Zeile in der plugin.php im Pluginordner other-posts

// Remove the short codes
       $content = preg_replace('/\[.*\]/', '', $content);

Und kommentiere die Zeile mit 2 Schrägstrichen aus

// Remove the short codes
        //$content = preg_replace('/\[.*\]/', '', $content);
Ähnliche Artikel mit Plugin
 ähnliche Artikel in WordPress

Ähnliche Artikel anhand von Tags oder /und Kategorien

Auf Maratz.com fand ich folgenden Code.

Hier wird die Ähnlichkeit anhand von Tags /Schlagwörtern gesucht, hat man zb 7 ähnliche Artikel vorgegeben und es werden aber nur 5 ähnliche bei den Tags gefunden dann sucht dieser Code nach Ähnlichkeiten in den Kategorien.

Dieser Code sollte direkt in die Single.php in den Loop geschrieben werden, also mindestens vor dem “endwhile“.

<?php
 
    $max_articles = 7;  // How many articles to display
 
    ?><div id="related-articles" class="sidebox"><h3>&Auml;hnliche Artikel</h3><ul> 
 
    <?php $cnt = 0;
 
    $article_tags = get_the_tags();
    $tags_string = '';
    if ($article_tags) {
        foreach ($article_tags as $article_tag) {
            $tags_string .= $article_tag->slug . ',';
        }
    }
 
    $tag_related_posts = get_posts('exclude=' . $post->ID . '&numberposts=' . $max_articles . '&tag=' . $tags_string);
 
    if ($tag_related_posts) {
        foreach ($tag_related_posts as $related_post) {
            $cnt++;
            echo '<li class="child-' . $cnt . '">';
            echo '<a  title="'.$related_post->post_title . '" href="' . get_permalink($related_post->ID) . '">';
            echo $related_post->post_title . '</a></li>';
        }
    }
 
    // Only if there's not enough tag related articles,
    // we add some from the same category
 
    if ($cnt < $max_articles) {
 
        $article_categories = get_the_category($post->ID);
        $category_string = '';
        foreach($article_categories as $category) {
            $category_string .= $category->cat_ID . ',';
        }
 
        $cat_related_posts = get_posts('exclude=' . $post->ID . '&numberposts=' . $max_articles . '&category=' . $category_string);
 
        if ($cat_related_posts) {
            foreach ($cat_related_posts as $related_post) {
                $cnt++;
                if ($cnt > $max_articles) break;
                echo '<li class="child-' . $cnt . '">';
                echo '<a title="'.$related_post->post_title . ' "  href="' . get_permalink($related_post->ID) . '">';
                echo $related_post->post_title . '</a></li>';
            }
        }
    }
 
    echo '</ul></div>';
 
?>

Ich habe den title Tag überall dazugegeben.

Weitere Möglichkeiten wie Du ähnliche Artikel anzeigen kannst, findest Du unterhalb dieses Artikels.

Wars hilfreich freu ich mich übers Weitersagen.
13 Kommentare zu: "Ähnliche Artikel – 2 weitere Möglichkeiten"
  1. Hi,
    habe den Code von Matze bei mir mal eingebaut, dass Problem war aber, dass mir dann die ganzen Links unterstrichen wurden.

    An was kann das liegen?

    LG

    Lefdi

    Lefdi30.09.09 19:51 | # |

  2. @Lefdi
    Ich hoffe ich seh es richtig und wolltest das auf der Radseite(Link von deinem Kommentar) einbauen? Da gibt es nämlich keinen globalen Style für Links. Am einfachsten schreibst du in der Zeile:

    ——-Anstatt———-

    echo '<a>post_title . ' href="' . get_permalink($related_post-&gt;ID) . '"&gt;';
    echo '<a>post_title . ' href="' . get_permalink($related_post-&gt;ID) . '"&gt;';

    Oder du schreibst in das Hauptstylesheet (style.css):

     
    #related-articles a { text-decoration:none; }

    Mfg Richard
    Entschuldige bitte den Doppelpost, habs beim ersten mal nicht formatiert gehabt.

    Der Koerper30.09.09 21:01 | # |

  3. Hi Monika,

    letztens hat mir ein Besucher auch noch einen sehr effizienten Hinweis hinterlassen, der sogar Frank Bueltge´s Version um ein paar queries hinter sich lässt. http://wordpress.org/extend/plugins/efficient-related-posts/

    Nur der Vollstädnigkeit halber, obwohl da natürlich noch mehr Links erscheinen müssten, ich weiß :-)

    LG aus Berlin!

    Daniel30.09.09 21:03 | # |

  4. Hi Richard,

    ja für die Seite soll es sein.
    Ähm, sind die beiden Codes die ich austauschen soll nicht identisch…?
    Ich seh da keinen Unterschied.

    Mit der CSS-Anweisung ging es irgendwie auch nicht.

    LEfdi

    Lefdi30.09.09 21:09 | # |

  5. Wordpress bzw. das Theme macht mir leider die Formatierung kaputt. Eigentlich ist das ein anderer Code.
    Wenn du das einbaust, unterstreicht er sämtliche Links oder nur die betreffenden, also die ähnlichen Artikel?

    Der Koerper30.09.09 22:04 | # |

  6. Hi nicht der Code macht Dein Design anders, sondern vermutlich das CSS,
    der Code gibt gar keine CSS Anweisung, er nimmt die vom vorhandenen Theme für die Links,

    tippe in die style.css des verwendeten Themes

    #related-articles ul li a{text-decoration:none;}

    Beim Plugin kannst Du ja das html bestimmen, da weiß ich nicht was Du reingetippt hast,
    lg

    texto30.09.09 23:29 | # |

  7. Moin,

    Plugin hab ich keines, hab nur den obigen Code in die single.php eingefügt.
    Aber auch mit der CSS-Anweisung werden die Links immer noch unterstrichen und zwar nicht nur die ähnlichen Artikel sondern alle auf der Webseite.
    Hab es mal so gelassen, damit ihr seht was ich meine

    Lefdi

    Lefdi01.10.09 11:52 | # |

  8. Ist in dem Code diese Zeile unvollständig?
    <u
    sollte das evtl. die startete Auflistung sein?
    als

    funkygog01.10.09 12:54 | # |

  9. Der Kommentar kam leider auch nur unvollständig an.

    …sollte das evtl. die startete Auflistung sein?
    also das öffnende ul.

    funkygog01.10.09 12:57 | # |

  10. da oben hat sich ein Fehler eingeschlichen gehabt, ein ” zuwenig :(
    ich glaub ich habe das gestern 12mal locker durchgelesen, und nicht gesehen
    und der kam 100% durch copy&paste, weil auf der Testseite ist er ja nicht da

    tut mir sehr leid und einfach nochmals kopieren…

    ist doof sowas,wenns passiert …. kann bloß virtuell einen Kaffee hinstellen

    lg

    texto01.10.09 13:16 | # |

  11. Den Kaffee nehm ich gerne :) , Kein Problem!

    Der Koerper01.10.09 14:45 | # |

  12. hi,

    super, jetzt klappt es.
    ist doch kein problem. denke bei so vielen zeichen sieht man oft den wald vor lauter bäumen nicht mehr.

    und für die super schnelle antwort backe ich noch nen virtuellen kuchen ;-)

    lg und vielen dank
    lefdi

    Lefdi01.10.09 14:46 | # |

  13. ;-) na dann …

    auf zur Kaffeejausn

    texto01.10.09 16:48 | # |

  • Name and Mail are required.