Come separare i commenti dai trackbacks

Vi e’ mai capitato di leggere I commenti ad un post, i quail magari si sono sviluppati in una discussione, e di trovare i fastidiosissimi trackbacks che continuamente interrompevano la vostra lettura? Se anche a voi danno fastidio, ecco una soluzione semplice e intuitiva: separare i commenti e i trackbacks in due liste separate, cosicchè entrambi possano comparire dopo i vostri post ma senza disturbarsi a vicenda. Se vi chiede come si possa fare, continuate semplicemente la lettura!

Per chi non sapesse cosa sono I trackbacks: quando qualcuno crea un link ad un vostro post su un altro blog, questo link viene automaticamente notificato al link di origine, che lo riporta nella sezione dei commenti. L’utilita’ di questa notifica e’ far capire quante volte il vostro post e’ stato citato in altri blog o siti web, e quindi il suo prestigio nella rete.

Per separare i commenti dai trackbacks dobbiamo lavorare con il codice PHP del file comments.php del vostro template. Innanzitutto è buona cosa fare una copia di backup del file sul vostro disco rigido cosicchè, nel caso ci fosse qualche problema, potreste rimettere tutto a posto come era prima. Dopo aver fatto questa copia, passiamo subito alle modifiche da apportare per dividere i commenti dai trackbacks:

Innazitutto dovremo modificare il Loop dei commenti. Aprite quindi il file comments.php con un editor di testo e cercate la seguente linea di codice:

<?php foreach ($comments as $comment) : ?>

Nella riga immediatamente dopo inserite il seguente codice:

<?php $comment_type = get_comment_type(); ?>

<?php if($comment_type == ‘comment’) { ?>

Quindi scorrete con il codice un po’ basso fino a trovare la seguente linea:

<?php endforeach; /* end for each comment */ ?>

e immediatamente prima scrivete il seguente codice:

<?php } /* End of is_comment statement */ ?>

Attraverso questa modifica al codice abbiamo modificato il Loop cosicchè solamente i commenti vengano visualizzati.

Ora dobbiamo creare un nuovo Loop nel quale vengano visualizzati esclusivamente i trackbacks al post. Per fare questo scorrete ancora un po’ la pagina comments.php e trovate il seguente codice:

<?php else : // this is displayed if there are no comments so far ?>

Immediatamente prima di questo, inserite il seguente codice:

<h3>Trackbacks</h3>

<ol>

<?php foreach ($comments as $comment) : ?>

<?php $comment_type = get_comment_type(); ?>

<?php if($comment_type != 'comment') { ?>

<li><?php comment_author_link() ?></li>

<?php } ?>

<?php endforeach; ?>

</ol>

Questo codice creerà un Loop per i trackbacks ai vostri commenti e sarà posizionato immediatamente dopo la lista dei commenti. Il titolo della lista è rinchiuso nel tag <h3> e può essere ovviamente cambiato, come anche la scelta se creare una lista numerata, come in questo caso con il tag <ol> o meno. Il tutto poi può chiaramente essere personalizzato con i CSS.

Spero che questo breve tutorial vi sia utile, come sempre suggerimenti e problemi possono essere lasciati nei commenti, alla prossima!

Foto by Juliaf

abbonati al feed rss

Una risposta a “Come separare i commenti dai trackbacks”

  1. Non male davvero, non ci avevo mai pensato :)
    Ciao Paolo!

Trackbacks

Ti é piaciuto il post? Lascia un commento!