In einer der letzten Beiträge – WordPress Track- und Pingbacks seperat listen, ohne Plugin – habe ich erläutert, wie man Trackbacks und Pingbacks getrennt darstellt. Ein kleiner Schönheitsfehler war, dass der Zähler bisher immer die Summe aller Kommentare incl. Trackback gezeigt hat. Deshalb hier nun die passende Abfrage, um Trackback und Kommentar getrennt zu zählen. nach der count-Funktion entstehen nun Werte in zwei Variablen, die dann im weiteren genutzt werden können.
$commentdata = array();
foreach ($comments as $comment) {
if (get_comment_type() == 'comment') {
$commentdata['comments'][] = $comment;
} else {
$commentdata['trackbacks'][] = $comment;
}
}
$count_comments = count($commentdata['comments']);
$count_trackbacks = count($commentdata['trackbacks']);
In $count_comments
steht nun die Anzahl der Kommentare und in $count_trackbacks
die Anzahl der Trackbacks.
Beispiel zur Ausgabe der Trackback-Anzahl
Im folgenden nun ein kleines Beispiel, um die Werte abzufragen und die Ausgabe entsprechend zu steuern. Das kann man beliebig weit treiben.
if ($count_trackbacks == 0) {
$count_trackbacks = '';
} elseif ($count_trackbacks == 1) {
$count_trackbacks = '1 Trackback';
} else {
$count_trackbacks = $count_trackbacks . ' Trackbacks ';
}
echo $count_trackbacks;
mhh… ich bin irgendwie zu blöd, das in der index.php einzubauen – da funktioniert die zeile ‚foreach ($comments as $comment)‘ ja nicht.
wie muss ich das umbauen? irgendwas in der art ‚the_post->comments‘?
Hallo Frank,
wenn ich das richtig sehe muss ich den zuerst genannten Bereich in die wp-comments-post.php einfügen oder? Muss ich dort irgendwas ersetzen oder einfach nur irgendwo reinpacken?
@PinkPüppi: nein, alle Codetipps sind in der comments.php im Theme zu integrieren/ verändern.