Un blog può essere un potente mezzo di informazione e approfondimento e allo stesso tempo un ricettacolo di spam, a seconda delle “persone” che lo visitano e di chi lo gestisce. Ti sarà sicuramente capitato di finire in un blog che non modera i commenti e non cura le interazioni con gli utenti, il risultato è un’invasione di SPAM e link di bassa qualità inseriti nel commenti. Questo aspetto non fa certo bene all’immagine del blog.
Per fortuna ci sono modi per mitigare questo fenomeno in WordPress. Innanzitutto c’è Akismet, un servizio anti-SPAM gratuito che convalida i commenti prima di pubblicarli nel front-end. Quindi ci sono le impostazioni native di WordPress per la gestione dei commenti:
Con queste opzioni puoi modificare leggermente le policy del blog in modo da poter bloccare qualche commento spam. Sfortunatamente nella maggior parte dei casi queste opzioni non sono sufficienti a risolvere o almeno tamponare il problema.
Inoltre, per impostazione predefinita, i commenti di WordPress consentono l’utilizzo determinati tag HTML all’interno del corpo del commento. Usarli può aiutare a formattare meglio i commenti, ma in pratica gli spammer usano questa funzionalità per inserire backlink malevoli.
Tag HTML che si possono usare nei commenti WordPress:
<a href="" title="">
<abbr title="">
<acronym title="">
<b>
<blockquote cite="">
<cite>
<code>
<del datetime="">
<em>
<i>
<q cite="">
<s>
<strike>
<strong>
Sapevi che quando un utente aggiunge un URL di testo semplice nei tuoi commenti, WordPress lo rende automaticamente cliccabile? Il collegamento automatico non è archiviato nel database. WordPress rende gli URL cliccabili quando vengono visualizzati sullo schermo nell’area di amministrazione e nella sezione commenti sotto i tuoi articoli.
Trovarsi i commenti pieni di link spam non solo è fastidioso, ma può anche rovinare la SEO della pagina o addirittura del sito intero. Meglio evitare.
La soluzione migliore secondo me è disabilitare completamente i tag HTML nei commenti, il che significa che l’utente non potrà usare il markup, WordPress ignora eventuali tag e non converte il testi in HTML.
Non ci sono impostazioni nella dashboard per ottenere questo risultato, quindi dovrai aggiungere una riga di codice al tuo file functions.php:
// Disabilita il markup HTML nel commenti
add_filter( 'pre_comment_content', 'wp_specialchars' );
Consiglio anche di disabilitare la trasformazione automatica degli URL in collegamenti cliccabili. Puoi farlo aggiungendo un’altra riga:
// Rimuovi i link automatici nei commenti
remove_filter('comment_text', 'make_clickable', 9);
Tieni presente che questo codice funziona solo su URL in testo semplice. Se un utente ha deciso di creare un collegamento aggiungendo il tag HTML corretto e non hai disabilitato il markup HTML, tali collegamenti verranno visualizzati come dovrebbero.
Non sai come aggiungere la riga nel file functions.php? Allora meglio se usi un plugin già fatto.
D’ora in poi i commenti saranno solo in grado di pubblicare testo semplice. Forse non è il massimo, ma molto più sicuro dell’alternativa di farsi invadere dallo spam e dover cancellare tutti i commenti in una volta sola.