Una semplice guida per combattere alla radice lo spamming su WordPress
Se WordPress è il tuo CMS preferito sai bene che una delle cose più fastidiose da gestire sono i commenti SPAM.
Sebbene ci siano diversi sistemi di filtraggio pronti a darci una mano in quest’opera di bonifica quotidiana (modifica del file .htaccess, Akismet, etc.) in questa guida mi occuperò di un intervento che affronta a monte il problema.
Lo SPAM su WordPress
Gli spammer cercano di sfruttare la possibilità offerta dal sistema nativo di commento di WordPress che oltre al testo del commento vero e proprio, al nome di chi lo effettua e al suo indirizzo mail, consente di inserire anche l’URL di un proprio sito.
WordPress, infatti, propone un form di commento con i seguenti campi:
- Commento
- Nome
- Sito web (URL)
Il fenomeno è talmente ampio che, oltre a chi spamma manualmente, esistono diversi software per il post massivo dei commenti (in questo modo improprio viene anche utilizzato il famosissimo ScrapeBox, che è invece un software utilissimo in tante altre pratiche white del lavoro SEO).
Si tratta di vere e proprie macchine da SPAM, mediante le quali è possibile automatizzare tutti i processi di posting, comprese le variazioni dei testi da pubblicare, degli anchor text e degli URL.
Una soluzione radicale: la rimozione del campo URL
A questo punto, rimuovendo il campo URL dal form di commenti di WordPress, rimuoveremo la fonte primaria di interesse degli spammer e ridurremo in maniera consistente i commenti SPAM.
Metodo 1: modifica del file comment-template.php
Il primo modo per rimuovere il campo “sito web” dal form di commento è quello di intervenire direttamente sul file “comment-template.php” che si trova nella cartella “wp-include” nell’installazione del vostro sito WordPress.
(es. tua-installazione-wordpress/wp-include/comment-template.php)
Scarica il file (ti consiglio sempre di tenerne una copia di backup) ed aprilo con un editor di testo.
Cerca la seguente stringa:
'url' => '<p class="comment-form-url"><label for="url">' . __( 'Website' ) . '</label>' .
'id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></p>',
Questo il codice che serve a generare il campo URL “Sito Web” presente nel modulo dei commenti. Puoi cancellarlo brutalmente, oppure più elegantemente commentarlo inserendo un doppio // all’inizio di ognuna delle due righe:
//'url' => '<p class="comment-form-url"><label for="url">' . __( 'Website' ) . '</label>' .
//'<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></p>',
Metodo 2: modifica del file functions.php
Un metodo altrettanto semplice e che non soffre dei limiti derivanti dagli aggiornamenti di WordPress è quello che prevede l’inserimento di uno snippet di codice direttamente nel file functions.php del tuo tema WordPress.
Per trovare il file, vai nell’installazione di WordPress ed apri la cartella “themes” poi “wp-content” ed infine la cartella del tuo tema.
(es. tua-installazione-wordpress/wp-content/tuo-tema/function.php)
(es. intallazione-wordpress/wp-content/tema-figlio/function.php)
Lo snippet di codice da inserire
function remove_comment_fields($fields) {
unset($fields['url']);
return $fields;
}
add_filter('comment_form_default_fields','remove_comment_fields');