06.03.06Wordpress Kommentare nummerieren
Ich wurde danach gefragt, wie ich die Kommentare meines Blogs durchnummeriere (ich verwende keine geordnete Listen OL). Das ist ganz einfach, benötigt werden nur drei Zeilen PHP in der Datei wp-comments.php.
Zuerst definiert man eine Variable, in meinem Beispiel “cnr”:
...
<?php if ($comments) { ?> <--Originalzeile aus
wp-comments.php-->
<?php
$cnr = 1;
?>
...
Dort wo die Nummer erscheinen soll gibt man den Wert der Variable aus (echo("$cnr")):
...
<span class="cnr" title="Nummer des Kommentars">
<?php echo("$cnr"); ?> </span>
...
Ein SPAN-Element habe ich verwendet, um die Nummer über CSS optisch anpassen zu können.
Am Ende muss noch die Variable um 1 hochgezählt werden, damit - wenn vorhanden - der nächste Kommentar die Nummer zwei bekommt ($cnr++).
... <?php $cnr++; ?> <?php } // end for each comment ?> <--Originalzeile aus wp-comments.php--> ...
Die Zeilen, die was mit der “$cnr” zu tun haben befinden sich alle zwischen < ?php foreach ($comments as $comment) { ?> und < ?php } // end for each comment ?>, also innerhalb der Kommentarschleife.








macx am Mrz 6, 2006 | Reply
Jens am Mrz 6, 2006 | Reply
also besser
// oder falls man was gegen Short-Tags hat:
Jens am Mrz 6, 2006 | Reply
[?= $cnr++; ?]
oder
[php echo $cnr++; ?]
[] entsprechen dabei dann nat. den spitzen Klammern.
Nadja am Mrz 6, 2006 | Reply
ich hatte es ganz vergessen, mich zu bedanken:
Vielen Dank für den Tipp. Und schön, dass du ihn anderen zugänglich machst.
Allerdings habe ich noch etwas anzumerken: Du meist sicher das Template comments.php im gewählten Theme, denn eine wp-comments.php existiert nicht.
Björn am Mrz 6, 2006 | Reply
@Nadja: Bei mir heißt sie wp-comments.php. Kann aber auch sein, dass es in WP 2.0 anders ist. Da muss ich zu meiner Schande gestehen, dass ich mich schon die ganze Zeit um das Update drücke.
Knut Karnapp am Mrz 6, 2006 | Reply
Horst Scheuer am Mrz 6, 2006 | Reply
Michel am Mrz 7, 2006 | Reply
Marcel Widmer am Apr 11, 2006 | Reply
Nur eine Frage (an die ganze Runde): kann man das nicht im eigenen Template einbauen oder als Plugin lösen (ich kann’s nicht)?
Ich mag nämlich nicht am eigentlichen WP-Code rumschrauben. Aus Erfahrung weiss ich, dass ich bei einem Update die Änderungen meist vergesse und somit nicht mehr nachführe.
Test am Jan 1, 2007 | Reply