Zur Suche springen Zur Navigation springen Zum Hauptinhalt springen Zum Footer springen

In WordPress ist es mit Bordmitteln, etwa einem Template Tag, leider nicht möglich die Anzahl der Kommentare und die der Trackbacks getrennt von einander darzustellen. In der Datenbank unterscheidet WordPress hingegen beide Typen, und markiert echte Kommentare in einem zusätzlichen Feld. Mit einer entsprechenden Funktion kann geprüft werden ob das Feld ausgefüllt ist, wodurch sich beide Arten von Kommentaren einzeln anzeigen lassen.

Schulungen von kulturbanause

Intensive Trainings mit hohem Praxisbezug.

Anzahl an Kommentaren darstellen

Der folgende Code gehört üblicherweise in die functions.php. Er kann jedoch auch im gleichen Template eingesetzt werden.
Die Funktion prüft ob Kommentare vorhanden sind und gibt (sofern das Ergebnis nicht Null ist) die Anzahl aus.


function comment_count() { global $post;
$thePostID = $post->ID; global $wpdb;
$count = "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_type = ' '
AND comment_post_ID = $thePostID"; $co_number = $wpdb->get_var($count);
if ($co_number == 0) {} else {echo $co_number;} 
}

Mit folgenden Snippet wird die Anzahl der Kommentare an einer beliebigen Stelle des Themens dargestellt.


<?php comment_count(); ?>

Anzahl der Trackbacks darstellen

Der Code für die Darstellung der Trackbacks funktioniert auf die gleiche Art und Weise. Folgendes Snippet gehört in die functions.php.


function trackback_count() 
{ global $post;
$thePostID = $post->ID;
global $wpdb;
$count = "SELECT COUNT(*) FROM $wpdb->comments
WHERE comment_type != ' '
AND comment_post_ID = $thePostID"; $tb_number = $wpdb->get_var($count);
if ($tb_number == 0) {} else {echo $tb_number;} }

Mit diesem Snippet wird die Anzahl der Trackbacks ausgegeben.


<?php trackback_count(); ?>

Credits

Dieses Snippet habe ich auf denkvirtuose.de gefunden und unverändert übernommen. Es funktioniert einwandfrei und ist auch auf diesem Blog im Einsatz. Vielen Dank dafür!

Geschrieben von Jonas

thumb

Jonas ist Gründer der Webdesign Agentur kulturbanause® und des kulturbanause® Blogs. Er übernimmt Projektleitung, Grafik sowie Frontend- und WordPress-Development und hat zahlreiche Fachbücher und Video-Trainings veröffentlicht. Als Dozent leitet er Schulungen und Workshops. Am liebsten beschäftigt er sich mit Projekten und Themen, die ihn gleichermaßen konzeptionell als auch gestalterisch und technisch fordern.

Seminare mit Jonas Hellwig anzeigenJonas Hellwig bei Xing

Feedback & Ergänzungen – 4 Kommentare

  1. Stephan
    schrieb am 22.05.2013 um 17:12 Uhr:

    Ich habe bei:

    http://koffeinbetriebenes.net/wordpress-anzahl-der-kommentare-je-artikel-ausgeben/488

    gelesen, dass diese Variante sehr viele Datenbank abfragen tätigt. Deshalb wird eine andere Variante empfohlen.

    Und zwar folgenden Code in die comments.php :
    comment_count;
    if($kommentare > 1) echo $kommentare.“ Kommentare“;
    elseif ($kommentare == 1) echo $kommentare.“ Kommentar“;
    else echo „keine Kommentare“;
    ?>

    Es funktioniert ohne Probleme, aber meine Frage ist ob er da wirklich recht hat und es mit dem php-code besser ist
    Gibt es das auch für die Trackbacks?

    Antworten
    • Florian
      schrieb am 22.05.2013 um 17:36 Uhr:

      Also mit der hier vorgestellten Variante wird auf einer Übersichtsseite für jeden Beitrag eine Abfrage für Kommentare und eine für die Trackbackanzahl gemacht.
      Also bei 10 Artikeln bspw. 20 Abfragen für Trackbacks und Kommentare.

      Bei deinem Codebeispiel werden im Übrigen die Trackbacks gar nicht gesondert ausgelesen?!

      Antworten
  2. Florian
    schrieb am 01.05.2013 um 18:22 Uhr:

    Vielen Dank für den Tipp, nur eine kleine Anmerkung:
    Bei dieser Variante werden auch Kommentare gezählt, die als Spam eingestuft sind. Mit folgender SQL Query werden nur die genehmigten gezählt:
    $count = "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_type = ' '
    AND comment_post_ID = $thePostID AND comment_approved='1'";

    Antworten
    • Jonas Hellwig (Autor)
      schrieb am 01.05.2013 um 19:40 Uhr:

      Vielen Dank für die Ergänzung.

      Antworten

Schreibe einen Kommentar zu Florian Antworten abbrechen

Wir freuen uns über Anregungen, Ergänzungen oder Hinweise zu Fehlern. Wir lesen jeden Eintrag, veröffentlichen aber nur, was den Inhalt sinnvoll ergänzt.

WordPress-Projekte mit kulturbanause

Wir wissen wovon wir reden. Wir setzen WordPress seit über 10 Jahren erfolgreich ein und realisieren maßgeschneiderte Websites auf Basis dieses großartigen CMS.

WordPress-Leistungsangebot →

Schulungen von kulturbanause

Wir bieten Seminare und Workshops zu den Themen Konzept, Design und Development. Immer up-to-date, praxisnah, kurzweilig und mit dem notwendigen Blick über den Tellerrand.

Übersicht Schulungsthemen →