Come colorare i commenti degli autori in WordPress.

Un’altra piccola modifica (ad un template al quale sono affezionato ma che so che prima o poi stravolgerò…).

Dopo aver cambiato antispam per i commenti, ecco l’highlight dei miei commenti sul blog.

Tempo fa Antonio aveva realizzato la stessa cosa, con un codice un pizzico diverso.

Personalmente ho preferito una soluzione alternative per ragioni di sicurezza.

Quanto propone Antonio infatti, è di sfruttare l’indirizzo e-mail dell’amministratore per fare capire a WordPress che il commento è del proprietario del blog e farlo colorare diversamente.

Questa soluzione non è elegante perché, chi vuol scrivere un commento con lo sfondo del proprietario dovrà semplicemente mettere il suo indirizzo e-mail nel campo e-mail. Quando va bene, ci guadagna un po’ di visibilità… quando va male, può *spacciarsi* per l’amministratore del blog agli occhi degli utenti (fino alla ovvia moderazione del commento…).

Ma questa ragione, per quanto bruttina, è la meno fastidiosa. Il riconoscimento del proprietario del blog, tramite e-mail, permette a chiunque voglia scoprire il nostro indirizzo e-mail, di conoscerlo dopo un paio di commenti di test. Appena esce il commento colorato, abbiamo scoperto l’indirizzo e-mail e possiamo sfruttarlo per i nostri scopi (dal semplice utilizzo per contattarci, allo spam o… alla fantasia degli scocciatori non vi è mai fine).

Per questo, ho sfruttato l’ID dell’utente (assegnato agli utenti registrati sul blog) per farmi riconoscere come amministratore.

Nel file comments.php del mio tema, vi è una riga come la seguente:

<li id="comment-<?php comment_ID() ?>"></li>

Che ho editato nel seguente modo:

<li id="comment-<?php comment_ID() ?>"
< ?php if (1 == $comment->user_id) echo 'class="admincomment"'; ?> ></li>

Fatto questo, possiamo cambiare lo stile dei commenti degli amministratori del blog tramite tramite il foglio di stile del template (style.css nel mio caso), modificandolo come segue:

.admincomment {
background-color: #E9F7FF !important;
}

Ciao,

Emanuele

20 commenti » Scrivi un commento

  1. Ottima miglioria… anhe se io invece dell’ID dell’utente (che potrebbe anche essere diverso da 1) controllerei più il gruppo di appartenenza dell’utente, in questo caso Administrator. Così forse sarebbe indipendente da eventuali cancellazioni e ricreazioni di utenti… anche se, poi, se ci fossero più utenti Administrator, avrebbero tutti lo stesso colore.
    Il motivo per cui ho inserito l’email nella mio metodo è semplice: anche se più insicuro (anche se fin’ora non mi è mai capitato nulla del genere) è che non tutti sanno che l’amministratore è ID = 1 (anche se dal Pannello di Amministrazione di WP si può leggere questo valore) mentre tutti sanno la propria email! Inoltre, questo metodo è personalizzabile altrettanto semplicemente con tutti gli altri utenti del blog, senza per questo doversi ricordare i vari ID che sono poco mnemonici.

    Ciao,
    Antonio

  2. Antonio, si… il gruppo può essere un’idea. Comunque capisco che non sia mai successo… ma meglio prevenire che curare!
    Gli ID sono poco mnemonici ma basta impostarli una volta e, come hai detto già tu, sono visibili comodamente nella sezione utenti di WordPress…
    Ciao,
    Emanuele

  3. Forse sono troppo democratico ma ho preferito non evidenziare i miei commenti 😀

    Buona idea quella di usare l’id al posto dell’email, in giro si trova ovunque quella soluzione

  4. Neon, non è questione di mancanza di democrazia… quando rispondo a voi, so benissimo che i miei commenti valgono tanto quanto i vostri.
    Ci sono post come quello sul Netgear o su MSN in cui le mie risposte solitamente cercano di dar consigli e metterle più visibili penso possa aiutare i visitatori con difficoltà.
    Tutto qui…
    Ciao,
    Emanuele

  5. Ovviamente nel caso di post con alta affluenza dai motori può essere di aiuto.

    Io voglio solo lettori affezionati 😆

  6. Grande Emanuele!! Ci voleva proprio!

    Una cosa sola… Con i miei commenti funziona ma con quelli di Danzalo no, cosa devo modificare nel codice? 😥

    É sempre così, qualcosa non mi funziona mai!! 😀 😀

  7. Ovviamente non riesco a farlo andare… Dove devo aggiungere l’OR per dirgli qual è l’ ID di Danzalo?

    Cavoli, riesco sempre a complicarmi la vita!! 😡

  8. Dunque… per colorarli in modo identico al tuo (e diverso da quello degli altri utenti), devi inserire questo codice:
    < ?php if (1 == $comment->user_id || 2 == $comment->user_id) echo 'class="admincomment"'; ?>
    Se invece vuoi mettere un colore per te ed uno più *femminile* per la tua lei… 😉 eccoti il codice:

    < ?php if (1 == $comment->user_id) echo 'class="admincomment"';
    elseif (2 == $comment->user_id) echo 'class="commentidanzalo"'; ?>

    Ovviamente in questo caso devi anche creare una opportuna classe CSS dal nome “commentidanzalo”.
    Ciao,
    Emanuele

  9. Ho provato con entrambi i codici ma non funzionano… Cioè, il mio sfondo appare ma a lei no. É il suo ID è giusto, ho controllato!!

  10. Matteo, se vuoi mandami via e-mail il file comments.php che te lo sistemo a dovere, altrimenti impazzisco… magari il tuo template è un pizzico different! 🙂
    Ciao,
    Emanuele

  11. Ciao Emanuele,
    ho visto questa tua recensione e sicuramente saprai molto più di me di php.
    Nel mio blog uso uno sfondo differente per ogni mio collaboratore che inserisci i commenti, solo che ora mi accetta solo noi due alla richiesta del terzo non funzia.
    Ti posto il codice, forse saprai risolvere il problema.


    switch ($comment->user_id) {
    case 1:?>
    <div class="box1-aut" id="comment-">

    <div class="box1-cont" id="comment-">

    <div class="box1-cont" id="comment-">

    <div class="box1" id="comment-">
    <?php
    }

Rispondi a Matteo Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.