Sidebar
ein-/ausblenden

Summe der Kommentare in WordPress

Plugin für WordPress SEO

Anzeige

Comment Counter Example
Auf einigen amerikanischen Blogs und aktuell bei Cindy wird das neue Plugin Liz Comment Counter von Ozh vorgestellt, welches es dem Anwender sehr leicht macht, die Gesamtanzahl der Kommentare im Frontend des Blog darzustellen.

Wer aber nicht mit Widgets arbeitet oder die vielen schönen Zusatzfeatures wie „Farbe per Klick“ anpassen nicht benötigt, der kann es beispielsweise mit einer kleinen Funktion im Theme ebenso lösen.

Dazu legt ihr die folgenden Funktion in die functions.php eures Themes.


if ( !function_exists('fb_total_comments') ) {
	function fb_total_comments() {
		global $wpdb;
		$totalcomments = (int) $wpdb->get_var("SELECT COUNT(comment_ID)
							FROM $wpdb->comments
							WHERE comment_approved = '1'
							");
		if (0 < $totalcomments) $totalcomments = number_format($totalcomments);
	
		echo $totalcomments;
	}
}

Ab nun steht sie zur Nutzung im Theme bereit und kann in eine Ausgabe eingebracht werden. Die einfachste Form könnte beispielsweise wie folgt aussehen.


<?php if ( function_exists('fb_total_comments') ) { ?>
<p><?php fb_total_comments(); ?> Kommentare</p>
<?php } ?>

Ebenso kann man natürlich auch jedes andere HTML-Element nutzen und eine Klasse oder ID zuweisen, so dass man dann per CSS diesen typischen Counterbutton hat.

Da ich grafisch nicht so bewandert bin, aber Cindy immer wieder gern mit diesen kleinen Buttons spielt - eventuell kann sie dem einen oder anderen den entsprechenden Button zur Verfügung stellen. Es gibt sicher auch einen Web 2.0-Service? Edit: gefunden: Brilliant Button Maker

Dann gibt man die Anzahl mit Hilfe einer ID aus und formatiert diese per CSS, auch dazu ein Beispiel.


<?php if ( function_exists('fb_total_comments') ) { ?>
<div id="comment_count_button"><?php fb_total_comments(); ?></div>
<?php } ?>

Dass passende Stylesheet für die vergebene ID.


#comment_count_button {
	width:74px; // je nach Größe (breite) des Button
	height:14px; // je nach Größe (höhe) des Button
	text-align: left;
	font-size: 11px;
	padding-left: 1px 0 0 6px;
	color: #000;
	background: url(images/button.gif) no-repeat;
	margin-bottom: 2px;
}

Einfacher ab WordPress v2.5

Ist man mit WordPress ab Version 2.5 unterwegs, dann kann man auch die internen Funktionen nutzen und diese einfach und unkompliziert ausgeben. Die obige Funktion ist dann nicht notwendig! Der folgende Syntax gibt das gleiche wieder, wobei ich zusätzlich auf die Mehrzahl des nachstehenden Wortes eingehe und in das Beispiel integriert habe.


<?php if ( function_exists('get_comment_count') ) { ?>
<p>
	<?php
	$num_comm = get_comment_count();
	$num_comm = $num_comm['approved']; //approved, awaiting_moderation, spam, total_comments
	$num_comm = sprintf( __ngettext( '%s Kommentar', '%s Kommentare', $num_comm ), number_format_i18n( $num_comm ) ); 
	echo $num_comm;
	?>
</p>
<?php } ?>

Die Funktion get_comment_count() gibt ein Array zurück, welches verschieden Formen der Kommentare enthält. Damit kann man ohne SQL-Abfrage die unterschiedlichen Formen ausgeben. Es kann als Schlüssel genutzt werde: approved, awaiting_moderation, spam, total_comments. Die Titel der Schlüssel sprechen sicher für sich.

Fazit

Viel Spaß mit dem Anpassen und ab nun wird neben dem Feedburner-Button wohl der Kommentarcounter-Button zum Standard für Blogs.
* In meinem aktuellen Design findet man diesen Zähler im übrigen rechts unten in einer der Boxen.

10 Kommentare zu „Summe der Kommentare in WordPress“

  1. 1
    Kommentar von Cindy

    Danke für die ausführliche Erklärung. Mit der Anpassung kann man dann auch, wie bei dir zu sehen, so Statistiken wie Anzahl der Beiträge und Tags ausgeben oder? Hast du dafür auch die Codes oder habe ich die nur übersehen?

    Buttons für solche Counter zu erstellen wird sicher kein Problem. Wenn man eine Form vorher ausklügelt wie es im Endeffekt passen könnt das die Zahlen reinpassen, kann man gleich ein paar Farben zur Verfügung stellen. Also immer her mit den Ideen :)

  2. 2
    Kommentar von nastorseriessix

    Ich mag dich immer mehr Frank, vor allem aber mag ich deine schöne Tutorials. :)

    So ein kleines Tutorial für folgendes, wäre auch nicht schlecht, wenn du dafür Zeit hast:
    Wie bekomme ich das hin, das in meinem Blog die Anzahl der Kommentare,Artikel und dem Startdatum angezeigt bzw an einer bestimmten Stelle ausgegeben wird?

    Habe das schon mehrfach in irgendwelchen Blogs gesehen und auf Nachfrage hies es dann immer das es ein Plugin oder Widget sei. Aber mit Widgets will ich nix zutun haben und ein extra Plugin für diese Funktionen, ich weiß ja nicht...

    Was meinst du Frank?

  3. 3
    Kommentar von Marvin

    bei meinen paar kommentaren lohnt sich das zwar noch nicht die anzeigen zu lassen, aber sehr gut erklärt hast du das. funzt auch! mich würde aber ebenfalls noch interessieren wie man tag, beitrag und kategorien-anzahl ausliest :>

  4. 4
    Kommentar von Michael Cvachovec

    Hallo Frank!

    Bei mir wird die Anzahl der "approved comments" einfach so ausgegeben:


    Viele Grüße
    Michael

  5. 5
    Kommentar von Jeriko

    $num_posts = wp_count_posts( 'post' );
    $num_cats = wp_count_terms('category');
    $num_tags = wp_count_terms('post_tag');

    Und dann halt wie gewünscht ausgeben.

  6. 6
    Kommentar von SantaCruze

    Danke für den Tip , ich weiß zwar noch nicht ob ich es bei meinem Blog verwende da es doch stark an das Feed Reader Symbol erinnert , aber ausgefallen ist es schon etwas.

  7. 7
    Kommentar von Frank Bültge

    Die Anfragen habe ich einer Lösung zusammengefasst, so dass ich nicht jeden Kommentar einzeln beantworten muss, viel Spaß beim Artikel

  8. 8
    Kommentar von Michael Cvachovec

    Hallo Frank!

    Leider wurde der Code den ich in meinem Kommentar mitliefern wollte, nicht abgebildet. Scheinbar bin ich zu doof mit den angebotenen xhtml-tags umzugehen. ;-)
    Muß ihn aber nicht noch einmal mitschicken, das hast Du in Deinem folgenden Artikel ja alles erledigt. Tolle Reaktion, mal wieder schneller als irgendjemand es erhoffen könnte.
    Viele Grüße
    Michael

  9. 9
    Pingback von Show Amount Of Posts, Pages, Categories, Tags, Comments For WordPress Themes - WP Engineer
  10. 10
    Kommentar von Marc Koschel

    Gibt es auch eine Funktion die 5 oder 10 neusten Kommentare im gesamten Blog auszugeben?

  11. 11
    Kommentar von Alex

    Danke, ich habe das ganze Internet abgesucht, und endlich zu der gesamten Anzahl der Artikel auch den Zähler für Kommentare gefunden.

    Grüße,
    Alex

Kommentare sind geschlossen.