Wer die meist kommentierten Artikel – most commented posts – in seinem Blog anzeigen möchte, greift in der Regel auf eines der vielen Plugins zurück. Ein Plugin braucht es für die meist kommentierten Artikel aber nicht wirklich, da die Ausgabe dieser auf einer Standard Abfrage unserer Datenbank basiert, die auch einfach in die entsprechende Theme Datei eingebunden werden kann.
So habe auch ich in meiner sidebar.php unterhalb der letzten Kommentare die meist kommentierten Artikel eingebunden (siehe “heiß diskutierte Beiträge”). Wie Ihr dort sehen könnt, wurde das erste Mal die 100 Kommentare Marke eines Beitrags überschritten. Ich bin ehrlich gesagt total baff und natürlich auch begeistert darüber, dass Ihr meine lieben Kommentatoren Euch so sehr zu Unterhaltungen auf meinem Blog hingezogen fühlt. Vielen Dank an dieser Stelle an alle!
In meinem etwas älteren Beitrag Neueste Kommentare ohne Plugin und Widget anzeigen erfahrt Ihr übrigens, wie ich die neuesten Kommentare als einfache Wordpress Datenbankabfrage eingebunden habe. Plugins sind zwar grundsätzlich gar nicht so schlecht, doch fressen sie vor allem auch Performance und deswegen vermeide ich deren Einsatz, wo es eben auch anders, bzw. in meinen Augen auch einfacher geht.
Nun aber zum Code für die Anzeige der meisten kommentierten Artikel, den ich Euch in zwei Versionen vorstellen möchte, einmal mit der Ausgabe des gesamten Titels und einmal mit der Ausgabe eines gekürzten Titels, was für den ein oder anderen von Euch interessant sein könnte, der wie ich oft längere Titel verwendet.
5 meist kommentierte Artikel mit dem gesamten Titel:
<ul>
<?php $result = $wpdb->get_results("SELECT comment_count,ID,post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 5");
foreach ($result as $post) {
setup_postdata($post);
$postid = $post->ID;
$title = $post->post_title;
$commentcount = $post->comment_count;
if ($commentcount != 0) { ?>
<li>(<?php echo $commentcount ?> Kommentare): <a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $title ?></a> </li>
<?php } } ?>
</ul>
5 meist kommentierte Artikel mit gekürztem Titel:
<ul>
<?php $result = $wpdb->get_results("SELECT comment_count,ID,post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 5");
foreach ($result as $post) {
setup_postdata($post);
$postid = $post->ID;
$title = $post->post_title;
$neuer_title = substr(trim($post->post_title), 0, 47) . '...';
$commentcount = $post->comment_count;
if ($commentcount != 0) {
if (strlen($post->post_title) > 47) { ?>
<li>(<?php echo $commentcount ?> Kommentare): <a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $neuer_title ?></a> </li>
<?php } else { ?>
<li>(<?php echo $commentcount ?> Kommentare): <a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $title ?></a> </li>
<?php } } } ?>
</ul>
Bei der Zahl 47, die angibt, ab dem wievielten Zeichen der Titel gekürzt werden soll, könnt bzw. müsst Ihr natürlich die für Euren Blog relevante Zahl angeben, damit der Titel in einer Zeile erscheint und nicht auf mehrere Zeilen aufgeteilt wird.
Wer mehr als 5 Artikel ausgeben möchte, der ersetzt die Zahl 5 am Ende der dritten Zeile mit der gewünschten Anzahl.
Ich denke sonst gibt es zu dieser relativ einfachen Abfrage nicht mehr viel zu sagen, oder habt Ihr noch Fragen dazu?
Schon wieder ein Teil deines Skripts? Ich bin erstaunt, dass Du alles so offen darlegst. Aber cool, wieder was neues
Bin gestern nicht wirklich weiter gekommen. Das Alte “Auge-Streichholz” Problem
Tanja, sag mal, kannst du Gedanken lesen. Genau nach der Anzeige mit gekürzten Titel bin ich auf der Suche. Gerade wenn man lange Titel hat, wird es bei vielen anderen Lösungen immer so unübersichtlich. Danke!
Hallo Tanja,
wie immer ein toller Artikel und eine noch bessere Dokumentation mit Coding!
Danke dafür!
Gruß
Matthias
@Sascha: Warum denn nicht
Schließlich kann ja jeder was davon haben, wenn es jemand zufällig gerade auch braucht…
@Anne: Nach gekürzten Titeln hab ich vor einiger Zeit auch ewig gesucht
Seitdem ich sie habe, möchte ich sie nicht mehr hergeben…
@Matthias: Danke
Was würde ich ohne deine Code Schnipzel machen
dabei habe ich es noch nicht einmal geschafft den anderen Code anzuschauen – dafür auch dankeschön
Danke Daniel
Unsere Tanja lebt quasi den “Open-Source-Gedanken”, wie ich sehe: Sie nimmt, weil sie z.B. WordPress nutzen kann, ohne dafür zahlen zu müssen, gibt aber ihr Know-How auch wieder weiter
SO soll das sein (und so halte ich es ja auch mit meinen Ideen).
Ich denke, man muss nicht immer aus allem Geld schlagen. Viele Dinge sind in meinen Augen viel zu “Grundlegend”, als dass man sie nur gegen Geld weitergeben wollen würde.
Mal ehrlich gefragt: Wer hätte sich für Tanjas Lösung interessiert, wenn sie geschrieben hätte: “Ich habe hier einen passwortgeschützten Beitrag, der dieses Thema behandelt, wer das Passwort möchte, soll mir per Paypal 1 Euro überweisen”… wer hätte wirklich diesen Euro bezahlt? Ganz ehrlich?
Da kann ich Kim nur zustimmen, vor allem mit so einem Code lockt man auch wieder Besucher an, welche dann vielleicht auf die Werbung klicken und somit verdient man bestimmt mehr, als mit der “1 Euro PayPal” Methode
PS: es sollte oben natürlich “Schnipsel” und nicht “Schnipzel” heißen =D
@Tanja: Ja ich schau mal, bin grade dabei, deinen Code einzubauen. Wenn du entferntes Schreien hörst, dann ist was schief gegangen. Um an deinen neuesten Artikel anzuknüpfen, jetzt wäre wirklich ein guter Zeitpunkt für mich, mal etwas abzuschalten. Ich bin mit den Nerven am Ende. Heut nacht werde ich vermutlich von Code-Salat träumen.
Codesalat ist toll. Meine Träume fangen Dank Tanja jetzt auch so an:
Lol mein Code ist weg. Na, Blog gesprengt?
@Kim: Wo kämen wir dahin, wenn wir alle unsere Erkenntnisse nur noch kostenpflichtig anbieten würden? Ich für meinen Teil, hätte dann schnell den Spaß an der ganzen Sache verloren. Und ich glaube auch, dass es vielen anderen auch so gehen würde.
Persönlich sehe ich das so: Wer gerne was gibt, wird auch immer wieder gerne etwas erhalten, so funktioniert das Leben halt einfach auch
Sicherlich würde ich hier auch weitaus lieber mehr Zeit investieren können, aber da ich für meinen Lebensunterhalt, wie viele andere auch, arbeiten muss, ist die Zeit, die ich hier habe halt doch auch begrenzt
@Daniel: Klar, die Werbung gibt es ja auch
@Anne: Bis jetzt habe ich noch nichts gehört oder habe ich nur meine Lauscher nicht aufgesperrt? Ich hoffe Du hattest Erfolg und gönnst Dir dann etwas Ruhe und Erholung!
@Sascha: Da war kein Code dabei *schnüffel*
@Tanja: Nein, dieser Code schien einfach zu sein, … erstaunlicherweise, vielleicht habe ich auch nur irgendwas entscheidendes übersehen
Allerdings stößt mir aber immer noch der Cache-Salat mit CommentLuv-Dressing bitter auf. Der Teil, den ich aus deiner Datei kopieren muss, verringt aber bereits stündlich um 1 bis 2 Zeilen
Ich sehe Du bastelst zur Zeit eh ziemlich viel rum
Ich hoffe den Cache Salat kriegst Du auch noch in den Griff
und den Strand dabei nicht vergessen… *ich auch will Meer und Strand*