Kommentare Pings Trackbacks trennen

Pings und Trackbacks sind nett. So merkt man wie beliebt ein Beitrag ist oder wie beliebt das Blog ist. Man merkt auch wieviele unbedingt auf Deinem Blog erscheinen möchten – und dies werden immer mehr, je höher der grüne Balken oben ist. Wer ihn kennt, weiß was ich meine. ;)

Für das Vorhaben die Pings, Trackbacks von den Kommentaren zu trennen benötigst Du die comments.php Deines Themes. Einen Editor Deiner Wahl. Und genau lesen. Unbedingt vorher die original comments.php Deines Themes sichern!

Schritt für Schritt Anleitung:Trackback, Pings von Kommentaren getrennt anzeigen

Öffne die comments.php und suche nach „You can start editing here„. Dort beginnen die Änderungen.

1. Zuerst setzt Du HTML Kommentare damit der überblick nicht verloren geht. Vor dem ersten ol und nach dem letzten /ol tippst Du:

<!--kommentare-->
<ol class="commentlist">
...
...
</ol>
<!--kommentare end-->

Dies ist auch gleichzeitig der Abschnitt, der für die Änderungen gebraucht wird und er wird doppelt gebraucht.

2. Markiere alles zwischen den HTML Kommentaren. Kopiere es und füge es genau oberhalb des ersten Kommentares wieder ein.

2.1 Jetzt änderst Du die Kommentare des eingefügten Bereiches in:

<!--pings-->
<ol class="commentlist">
...
...
</ol>
<!--pings-->

<!--kommentare-->
<ol class="commentlist">

3. Jetzt musst Du WordPress nur mehr sagen, wann es Kommentare und wann Pings anzeigen darf. Also welchen Kommentartyp es nehmen darf und genauso heißt auch die Funktion get_comment_type Dazu musst Du nur eine Zeile einfügen und zwar genau unter der Zeile wo es heißt „foreach“.

Bei den Pings und Trackbacks ist es einfacher zu sagen: Nimm alles was kein Kommentar ist, dies sieht dann so aus.

<!--pings-->
<ol class="commentlist">
	<?php foreach ($comments as $comment) : ?>
		<?php if (get_comment_type() != "comment"){ ?>

Jetzt scrollst Du weiter nach unten und suchst den Kommentar, wo die Kommentare anfangen sollen. Auch dort fügst Du nur eine Zeile ein. Und diesmal sagst Du WordPress:Nimm alles, das ein Kommentar ist. Das sieht dann so aus:

<!--kommentare-->
<ol class="commentlist">
	<?php foreach ($comments as $comment) : ?>
		<?php if (get_comment_type() == "comment"){ ?>

4. An und für sich bist Du jetzt fertig, doch nehme ich an, dass Du Deinen Usern auch noch sagen willst, wann es Pings und wann es Kommentare sieht, daher kannst Du auch noch überschriften einfügen und natürlich das HTML ganz nach Deinem Gusto gestalten. Hier ein Beispiel für die überschriften bei den Pings:

<!-- You can start editing here. -->

<?php if ($comments) : ?>
<h3 id="comments"><?php comments_number('Keine Reaktion', 'Eine Reaktion', '% Reaktionen' );?> zu <?php the_title(); ?></h3>

<!--trackbacks pings-->
<h3 id="trackbacks">Trackbacks/Pings</h3>
	<ol class="commentlist">
	<?php foreach ($comments as $comment) : ?>
		<?php if (get_comment_type() != "comment"){ ?>
..

Fertig sieht das ganze dann so aus:

 Pings von Kommentaren trennen
Pings, Trackbacks von Kommentaren trennen.  

edit am 8.12.06 Perun zeigt eine Möglichkeit mit einem Plugin auf Mit diesem kann man die Trackback und Pings auch auf die *Seite* schieben.

edit am 07.07.07
Wegen einer Anfrage per Email habe ich soviele wie mögliche Lösungen für Trackbacks und Pings von den Kommentaren trennen gesucht. Hier meine Fundstücke, weiß jemand noch etwas bitte mir einfach mailen, gerne nehm ich auch diese Lösung auf.

bei Fragen fragen ;)
4

4 Beiträge zu “Kommentare Pings Trackbacks trennen

  1. Kommentar Autor
    Elmar
    Kommentar

    Erstmal (wieder) herzlichen Dank.

    Schreib doch für die Dummen wie mich nochmal hin, dass man die geschweifte Klammer der beiden zugefügten Zeilen auch wieder schließen sollte ;-)

    Jeweils vor „php endforeach;“

  2. Kommentar Autor
    Tari
    Kommentar

    Huhu Monika,

    ich habe mir ein Theme mit einer Software erstellt, läuft auch alles ganz prima. Jetzt stelle ich aber fest, das meine Trackbacks überhaupt nicht ausgegeben werden. Hast du einen Lösungsvorschlag?

  3. Kommentar Autor
    Monika
    Kommentar

    Tari werden sie mit dem default theme ausgegeben?
    also einfach mal ein anders Theme aktivieren

    wenn ja , dann nimm die comments.php des default Themes, und passe deren html an dein Theme an

    lg

  4. Kommentar Autor
    Tari
    Kommentar

    ja, werden sie… ich habe jetzt einfach geschaut ob ich irgendwas eingebaut hatte dort und dann einfach die komplette Datei – mit vorigem Backup – überschrieben.

    Funktioniert auch, wüsste jetzt nicht, was ich weiter html-mäßig anpassen muss.
    Dann versuche ich das jetzt mal aufzuhübschen… nämlich oben erwähntes trennen :) sieht jetzt nämlich wie Kraut und Rüben aus :)
    Danke erst mal :)