Die letzten Kommentare in einem Widget anzeigen – ohne Plugin

kommentare

WordPress bietet von Haus aus ein Widget an, dass die letzten Kommentare anzeigt. Allerdings ist das relativ mager - es zeigt lediglich den Namen des Kommentators sowie den Titel der kommentierten Seite an.

Es gibt eine Vielzahl an Plugins, mit denen man Kommentare in allen Varianten per Widget anzeigen kann. Aber es ist wirklich einfach, die WordPress-Kommentare ohne den Einsatz eines Plugins in einem Widget auszugeben.

Und da es immer gut ist, wenn ihr euer WordPresssystem maximal schlank haltet zeige ich euch, wie ihr eure Kommentare in WordPress ohne den Einsatz eines Plugins in der Sidebar per Widget ausgeben k├Ânnt.

Ihr m├╝sst lediglich einen Code in eure functions.php, eure style.css und in ein Textwidget setzen und fertig ist die Anzeige der letzten Kommentare ohne Plugin.

  1. Die Vorbereitung - die Textwidgets php-f├Ąhig machen:

    Damit der PHP-Quellcode in euren Widgets nicht einfach nur als Text angezeigt sondern auch funktional interpretiert wird, brauchen wir in der functions.php folgenden Quellcode:

    //Textwidget Php-f├Ąhig machen
    add_filter('widget_text', 'textwidget_kann_php', 99);
    
    function textwidget_kann_php($text) {
    if (strpos($text, '<' . '?') !== false) {
    ob_start();
    eval('?' . '>' . $text);
    $text = ob_get_contents();
    ob_end_clean();
    }
    return $text;
    }

    Diesen Quellcode habe ich bestimmt schon ├Âfters erw├Ąhnt┬á- daher kann es gut sein, dass ihr diesen Code schon eingebaut habt....

  2. Die Funktion f├╝r die Ausgabe der Kommentare in der functions.php:

    Hier findet ihr den Originalbeitrag von wplancer.com, der dieses fantastische Script geschrieben hat.
    Ich habe diesen jedoch f├╝r das Beispiel der Ideenlounge leicht modifiziert in meine functions.php eingebaut:

    function bg_recent_comments($no_comments = 6, $comment_len = 80, $avatar_size = 30) {
    $comments_query = new WP_Comment_Query();
    $comments = $comments_query->query( array( 'number' => $no_comments ) );
    $comm = '';
    if ( $comments ) : foreach ( $comments as $comment ) :
    $comm .= '<div class="wgin_comment"><a class="author" href="' . get_permalink( $comment->comment_post_ID ) . '#comment-' . $comment->comment_ID . '"><b>';
    $comm .= get_avatar( $comment->comment_author_email, $avatar_size );
    $comm .= get_comment_author( $comment->comment_ID ) . ': ';
    $comm .= '</b>' . strip_tags( substr( apply_filters( 'get_comment_text', $comment->comment_content ), 0, $comment_len ) ) . '...<div style="clear:both;"></div></a></div>';
    endforeach; else :
    $comm .= 'No comments.';
    endif;
    echo $comm;
    }

    Hier noch eine kurze Erl├Ąuterund zur rot markierten Zeile:

    • $no_comments: Anzahl der Kommentare
    • $comment_len: Anzahl der Zeichen, die als Vorschau des Kommentars angezeigt werden sollen
    • $avatar_size: Gr├Â├če des Avatars
  3. Der Code f├╝r das Widget

    F├╝gt nun in eurer WordPress Administration unter Design >> Widgets ein neues Textwidget mit folgendem Text ein:

    <?php bg_recent_comments(); ?>
  4. Die Optik - kleine CSS Anpassungen

    Hier findet ihr meine CSS, die ich hier auf der Ideenlounge in der style.css verwendet habe - inklusive der Kommentare, was diese CSS genau machen:

    .wgin_comment {font-size:12px; margin-bottom:2px} 
    .wgin_comment a {text-decoration:none;padding:10px; 
    color:#000; background-color:#e0eaf0;
    display:block; border:none}
    .wgin_comment a:hover {color:#fff; background-color:#202023; }
    .wgin_comment img {float:right; margin-left:10px;}

    Die roten Farbwerte sind die Farben für die Hintergrundfarbe der Boxen im Normalzustand und bei Mouseover. Grün ist die Farbe des Textes.

Und das war es schon - der Zeitaufwand ist minimal und ihr habt ein Plugin weniger.
Probiert es einfach mal aus!

Kommentare

  1. Herr Hehn 22. Juni 2015 um 11:36

    Hallo!
    Mich w├╝rde interessieren, wie ich in dem Widget „Letzte Kommentare“ denn die Bilder der Verfasser anzeigen lassen kann.
    Danke.

    • coloritas 23. Juni 2015 um 7:40

      Hallo Herr Hehn,

      zuerst dachte ich – das ist ja ganz einfach – man f├╝ge einfach den Avatar des Autors hinzu – allerdings ist dies nicht der Fall, denn dann wird in dem kompletten Widget nur der Avatar des Autors des aktuell ge├Âffneten Beitrags angezeigt. Auch s├Ąmtliche resetquery Methoden greifen nicht.

      Ich w├╝rde empfehlen, mal direkt bei dem Verfasser dieses Scripts nachzufragen – eventuell kann er weiter helfen.

      Viele Gr├╝├če
      Mirjam

Das könnte dich auch interessieren:






  • About

    aboutHallo, ich hei├če Mirjam Schrepler und setze als freiberufliche Grafikerin mit einem wunderbaren Netzwerk Internetseiten und ganzheitliche Marketingprojekte um.

    Auf der Ideenlounge blogge ich ├╝ber die vielen kleinen Dinge, mit denen ihr euren Blog optisch aufh├╝bschen k├Ânnt.

    Ich liebe Wordpress und schlanken Quellcode - und es ist erstaunlich, wie einfach und schnell man viele Plugins durch ein kleines bisschen Quellcode ersetzen kann.

    Tragt euch einfach in den Ideenlounge Style-Club-Newsletter ein, und ihr erhaltet die besten Tipps regelm├Ą├čig per Mail.

  • Tolle Insider-Tipps zum Stylen deines Wordpress Content!

    Trage dich einfach in unseren Mailverteiler ein und erhalte das Plugin WGIN-Styles mit dem n├Ąchsten Newsletter for free

  • Die 1 Cent pro Klick Formel
  • News von Facebook

  • Basics (3)
    Wie binde ich ein eigenes CSS ein und wie funktioniert das mit dem Childtheme.
  • Code-Schnipsel zum Copy&Paste (14)
    N├╝tzliche CSS-, PHP-, und Javascript-Code-Snippets zum direkten Einbau in euer WP-Theme.
  • Freebies (4)
    Kostenlose Downloads - Icons, Grafiken, Hintergr├╝nde, Plugins und vieles mehr.
  • Lesenswertes (1)
    Immer wieder sto├če ich auf interessante Blogs, Webseiten oder B├╝cher - analog und digital - hier meine Favoriten.
  • Blogvorstellungen (1)
    Blogs, deren Design mich einfach umhaut....
  • Ressourcen (1)
    N├╝tzliche Online-Tools, Bildarchive und Code-Generatoren die euch als Blogger den Bloggeralltag erleichtern.
  • Reste-Ecke (7)
    Alles, was nicht wo wirklich in einer der anderen Kategorien passt.
  • Specials (1)
  • Blogverzeichnis - Bloggerei.de
  • FuZo-News per Mail abonnieren Folgt der Ideenlounge auf Facebook. RSS Feed