Related Post – Ähnliche Beiträge in Theme einbinden

Related Post, Ähnliche Beiträge lassen sich ohne Probleme per WordPress Plugin in die Theme einbinden. WordPress Plugin´s für Related Post bzw. Ähnliche Beiträge gibt es wie Sand am Meer die jedoch auch die Performance des Blogs reduzieren. Bei mir war bisher auch ein Plugin im Einsatz womit mein Blog aber so langsam wurde das ich ein Cache Plugin nutzen musste. So habe ich nach und nach die Plugins deaktiviert und sie in die neue Theme hardcoded eingebunden.

Im Einsatz hatte ich bisher immer Contextual Related Posts welches wirklich viele Einstellungen liefert.

Funktionen des Plugin Contextual Related Posts :

  • Statische Seiten in ähnlichen Beiträgen ausschließen
  • Ähnliche Beiträge sowohl im Beitragstitel als auch im Beitragsinhalt suchen. Bei Deaktivierung wird nur in den Beittragstiteln gesucht. (Im Falle der Aktivierung wird empfohlen, ein Cache-Plugin einzusetzen)
  • Ähnliche Beiträge auch in die Feeds aufnehmen
  • Ähnliche Beiträge auch in statischen Seiten auflisten.
  • Ähnliche Beiträge am Ende jedes Einzelbeitrags auflisten.
  • Maximale Anzahl der angezeigten ähnlichen Beiträge
  • Kategorien ausschließen
  • Überschrift über der Liste der ähnlichen Beiträge einstellen
  • Deutsche Übersetzung und vieles mehr …

Den Download zum Plugin findet ihr bei Ajay – On the Road called Life.

Related Post – Ähnliche Beiträge in functions.php einbinden

Wem das Plugin Contextual Related Posts zu langsam ist der sollte Related Post bzw. Ähnliche Beiträge in die Theme per functions.php und single.php einbinden. Das einbinden ist eine Sache von ein paar Minuten und belastet WordPress bzw. den Server nicht so sehr wie die Plugin Lösung. Wie gesagt ich finde meinem Blog mit der Lösung über die functions.php und single.php sehr viel schneller als mit Related Post Plugin Lösung! Danke an Frank Bültge für den Code!

In der functions.php muss am Ende folgendes hinzugefügt werden:

// related post with wordpress-tags

// wordpress > 2.3

function fbbl_get_related_posts() {

global $wpdb, $post;

 

$now = current_time(‚mysql‘, 1);

$tags = wp_get_post_tags($post->ID);

$taglist = „‚“ . str_replace(„‚“, “, str_replace(‚“‚, “, urldecode($tags[0]->term_id))). „‚“;

$tagcount = count($tags);

 

if ( $tagcount > 1 ) {

for ($i = 1; $i <= $tagcount; $i++) {

$taglist = $taglist . „, ‚“ . str_replace(„‚“, “, str_replace(‚“‚, “, urldecode($tags[$i]->term_id))) . „‚“;

}

}

$q = „SELECT DISTINCT p.*, count(t_r.object_id) as cnt FROM $wpdb->term_taxonomy t_t, $wpdb->term_relationships t_r, $wpdb->posts p WHERE t_t.taxonomy =’post_tag‘ AND t_t.term_taxonomy_id = t_r.term_taxonomy_id AND t_r.object_id = p.ID AND (t_t.term_id IN ($taglist)) AND p.ID != $post->ID AND p.post_status = ‚publish‘ AND p.post_date_gmt < ‚$now‘ GROUP BY t_r.object_id ORDER BY cnt DESC, p.post_date_gmt DESC LIMIT 5;“;

 

return $wpdb->get_results($q);

}

function fbbl_related_posts(){

 

if ( function_exists(‚get_the_tags‘) && (get_the_tags()) ) {

$related_posts = fbbl_get_related_posts() ;

}

 

if ( $related_posts ) {

foreach ($related_posts as $related_post ) {

$related_post_output = ‚<li>‘;

$related_post_output = $related_post_output . ‚<a href=“‚ . get_permalink($related_post->ID) . ‚“ title=“‚ . wptexturize($related_post->post_title) . ‚“>‘ . wptexturize($related_post->post_title) . “;

$related_post_output = $related_post_output . ‚</a></li>‘;

echo $related_post_output;

}

} else {

echo ‚<li>‘ . __(‚Keine &auml;hnlichen Beitr&auml;ge‘) . ‚</li>‘;

}

}

?>

Das muss in die single.php:

<strong>Ähnliche Beiträge:</strong>

<?php if (function_exists(‚fbbl_related_posts‘)) : ?>

<ul><?php fbbl_related_posts(); ?></ul>

<?php endif; ?>

Du solltest es irgendwo vor <?php comments_template(); ?> einfügen. Da muss man mal bischen probieren wo es am besten passt. Sollte dein Browser den Code nicht richtig darstellen gibts hier auch nochmal den Download Related-Post-by-Tags als Textdatei!

Über Daniel Birkhahn 388 Articles
Ich bin Daniel Birkhahn, jung, dynamisch, sozial engagiert, Orthographiemuffel, Querdenker, lieber Ehemann und Papa von 4 Kindern. Beruflich schlage ich mich als Altenpfleger durch und nebenbei beschäftige ich mich mit Technik, dem Web und alles was irgendwie hinterfragt werden kann!

4 Kommentare

2 Trackbacks / Pingbacks

  1. Neue, beliebte Wordpress Plugins 2011
  2. Monatsrückblick April 2011

Kommentar verfassen