Evidenziare i commenti scritti dagli autori del post con poche righe di codice in WordPress

comment highlighted

Vi piacerebbe avere una soluzione simile a quella in foto?? Magari senza modificare nessuna parte dell’html della grafica del proprio blog [tag]WordPress[/tag] ma soltanto aggiungendo poche righe di codice al proprio file e copiando la classe del foglio di stile per farne una seconda con colori cambiati? Bene seguite questa mini guida sperando sia di facile comprensione.

Prima di tutto aprite il file comments.php, se non avete questo file cercate un po nel vostro template il loop dei commenti che dovrebbe avere il codice seguente:

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

Bene una volta trovato il loop che altro non che un ciclo foreach che stampa tutti i commenti di un articolo dovrete inserire subito sopra di questa riga o comunque prima e fuori da questo ciclo il codice:

<?php $authordata = get_userdata($post->post_author); ?>

Questo codice prender le credenziali dell’autore del post, in questo modo con l’ultimo spezzone di codice che inseriremo potremo capire quando il momento di differenziare lo stile del commento.

Ora all’interno del loop (il foreach di prima) aggiungete subito sotto il seguente codice:

<?php
$authcomment=false;
if ($comment->comment_author_email == $authordata->user_email) $authcomment=true;
?>

Ora non vi rester altro da fare che modificare la classe usata per il commento, a seconda dello stile che vorrete usare, sempre nel nostro loop. Mi rifar alla template di default e ai suoi codici usati, credo che dovreste riuscire ad applicare il codice su qualsiasi altra template facilmente.

Sostituite la riga:
<li class="<?php echo $oddcomment; ?>" id="comment-<?php comment_ID() ?>">

Con la seguente:
<li class="<?php echo $oddcomment; if ($authcomment) echo '-highlighted'; ?>" id="comment-<?php comment_ID() ?>">

In pratica quanto authcomment true uscir la classe “-highlighted” oppure “alt-highlighted” a seconda che sar pari o dispari il commento.

Kubrick, il tema di default, alterna le classi dei commenti quindi dovrete creare due nuove classi nel foglio di stile (style.css), nel commento pari non definita alcuna classe quindi non si potr copiare quella esistente ma si dovr creare una nuova, mentre per quella dispari “alt” basta copiare la classe .alt esistente e modificare il colore di sfondo e impostare altre propriet, ma io non sono un grafico quindi mi limito solo a cambiare i colori di sfondo:

.highlighted {
background-color: #XXXXXX;
}

.alt-highlighted {
background-color: #XXXXXX;
}

Dove al posto delle sei X andranno i codici esadecimali del colore da voi scelto (appunto sei caratteri).

Migliore, suggerimenti e codici per altri tipi di stile potete postarli nei commenti, critiche incluse GRAZIE :d

Tag: , ,

14 Commenti a “Evidenziare i commenti scritti dagli autori del post con poche righe di codice in WordPress”

  1. Traffyk ha detto:

    Con questa modifica del tema sono arrivato alla revision numero 38 πŸ˜€ ehehe che dite allora vi piace?? Ho fatto un post di prova πŸ˜›

  2. Danilo ha detto:

    Questa sera ci provo .. paura πŸ˜‰

  3. phoenix ha detto:

    ovviamente questa guida vale solo per chi ha il blog su un server a parte e non su WordPress, vero?

  4. Ale ha detto:

    Tempo fa avevo implementato una soluzione simile, poi andata persa negli aggiornamenti di WP…

  5. flashmotus ha detto:

    complimenti traffik, ottima guida, si pu essere bravi grafici o programmatori ma per insegnare con semplicit occorrono particolari doti che tu di sicuro possiedi. πŸ˜‰

  6. Traffyk ha detto:

    @Danilo
    Avvisami quando completi il tutto, sono curioso di vedere gli stili scelti πŸ˜‰

    @Phoenix
    No, purtroppo non vale per wordpress.com ma solo su hosting proprio o in generale su servizi che ti permettono di modificare i file del template. Per credo che qualche template debba gia avere una soluzione del genere implementata…o almeno spero.

    @Ale
    Ti dir io invece ho avuto la fortuna di trovare gi nel foglio di stile la classe Highlighted (il tema derivato da Regulus) e quindi mi sono risparmiato la parte del foglio di stile che non avrei saputo fare πŸ˜€

    @Flashmotus
    Allora diciamo che so insegnare come aggiungere una riga di codice alla template ma non so programmare molto bene πŸ˜€ Soprattutto in grafica sono totalmente negato, sto da un mese cercando di creare una bozza completa e funzionante di questo tema a 3 colonne senza stravolgere l’attuale lavoro senza riuscirci con risultati soddisfacenti (eh si sono un po pignolo su questo πŸ˜› )
    Grazie

  7. Nicopi ha detto:

    L’effetto bello, peccato che non si possa fare la modifica sui blog di WordPress.com, tuttavia ho visto che alcuni temi come Freshy questa cosa ce l’hanno predefinita πŸ˜‰

  8. Blacko ha detto:

    lo devo provare!

  9. Blusfumato ha detto:

    Spettacolo.. non sembra complicatissimo!
    Tra l’altro mi sembra ci sia un plug in che fa questo.. sono curioso di trovarlo per vedere le differenze πŸ™‚

  10. […] La prima modifica l’ho “copiata” e rielaborata direttamente da un post di traffyk. […]

Lascia un Commento