Skip to content

Tutto per WordPress, lo sviluppo web — e non solo

🚫 Come fermare lo spam dei commenti su WordPress: tutte le 18 soluzioni

🚫 Come fermare lo spam dei commenti su WordPress: tutte le 18 soluzioni

Comment spam arriva in silenzio. Tre notifiche al mattino, trenta entro sera. Dopo una settimana il pannello di amministrazione affoga nella spazzatura mentre i bot sfornano richieste 24 ore su 24.

I motori di ricerca vedono ogni messaggio. Decine di link in uscita verso domini loschi trascinano in basso la reputazione del sito, e i lettori veri non trovano una discussione ma una discarica di annunci e URL di phishing. La fiducia cala più in fretta di quanto tu riesca a svuotare la coda di moderazione.

Eliminare del tutto lo spam è impossibile: dietro c'è un'industria sommersa fatta di bot, reti proxy e una motivazione economica diretta. Ma puoi costruire difese a strati che bloccano quasi tutta la spazzatura prima che arrivi a destinazione, senza toccare i commenti legittimi. In questa guida, tutti i 18 metodi funzionanti: da un paio di clic nelle impostazioni standard di WordPress fino a combinazioni di plugin e servizi esterni.

💡 Panoramica rapida:

  • Chiudi le falle di base in 5 minuti: disabilita i commenti anonimi, attiva la pre-moderazione, limita i link e rimuovi il campo URL dal modulo.
  • Collega un plugin antispam con honeypot o controllo cloud: Antispam Bee e Akismet catturano i bot prima che i commenti raggiungano il database.
  • Aggiungi un captcha o un web application firewall (Cloudflare / Sucuri) per proteggerti dagli attacchi automatici di massa a livello di richiesta HTTP.
  • Per il massimo isolamento, sostituisci il modulo commenti standard con un sistema esterno (Disqus, Facebook Comments) che gestisce il filtraggio in autonomia.

Perché gli spammer attaccano i commenti

Coda commenti spam nel pannello di amministrazione WordPress

Lo spam nei commenti non è vandalismo, è business. Dietro ogni messaggio spazzatura c'è un calcolo semplice: un bot pubblica centinaia di migliaia di commenti con link, e anche una frazione minima di clic genera traffico e link mass che migliorano il posizionamento sui motori di ricerca. È la scala a rendere il modello redditizio.

Il secondo obiettivo è il phishing: gli URL portano a false pagine di login o a siti infetti. Un utente che clicca rischia le proprie credenziali, e Google può segnalare la risorsa come pericolosa.

Il terzo vettore è la concorrenza sleale. Un attacco massiccio al sito di un competitor gonfia il database, carica il server e intasa il canale delle notifiche. Il ripristino richiede ore che di solito i titolari d'azienda non hanno.

Metodi di protezione integrati in WordPress

Le prime dieci soluzioni non richiedono plugin; si configura tutto dal pannello di amministrazione standard. Dove serve, aggiungeremo un paio di righe di codice a functions.php.

1. Disabilitare completamente i commenti

Checkbox per disabilitare i commenti nelle impostazioni discussione di WordPress

Il metodo più radicale e affidabile. Se il sito è un biglietto da visita, una landing page o un portfolio, i commenti non servono. Perché tenere aperta una porta a cui i visitatori veri non bussano mai, mentre i bot la martellano 24 ore su 24?

Metodo uno: «Impostazioni → Discussione», deseleziona «Consenti di inviare commenti ai nuovi articoli». Metodo due: il plugin Disable Comments disabilita globalmente i commenti su tutti i tipi di contenuto.

Metodo tre: codice. In page.php, sostituisci <?php comments_template(); ?> con una versione commentata: WordPress smette di richiamare il template. Lo stesso vale per gli articoli in single.php. I commenti esistenti restano nel database; sparisce solo il modulo.

2. Disabilitare i commenti anonimi

Impostazione per i campi obbligatori autore commento nell'amministrazione WordPress

Per impostazione predefinita, WordPress consente commenti senza nome né email. Per un bot spam è un regalo: nessuna necessità di simulare dati reali.

Vai in «Impostazioni → Discussione» e attiva «L'autore del commento deve compilare nome e email». I bot privi di questi campi vengono tagliati fuori automaticamente. Questa impostazione disciplina anche i commentatori veri: le risposte anonime sono raramente sostanziali.

3. Attivare la moderazione manuale

Checkbox moderazione manuale commenti nella sezione discussione di WordPress

La casella «Il commento deve essere approvato manualmente» significa che nessun messaggio compare sul sito a tua insaputa. Certo, crea lavoro manuale, ma per siti piccoli con una dozzina di commenti autentici al giorno è perfettamente accettabile.

Potenziamento: il campo «Moderazione commenti» nella stessa sezione. Inserisci lì le parole trigger e i commenti che le contengono vengono automaticamente messi in attesa di revisione. Un buon set di partenza: http, www, buy, discount, free, click here, viagra, casino.

4. Chiudere automaticamente i commenti agli articoli vecchi

Impostazione per chiusura automatica commenti su articoli WordPress datati

I bot spam attaccano anche i post datati. Un articolo di tre anni fa in archivio è un bersaglio uguale per loro, e il proprietario scopre il problema tardi.

L'opzione «Chiudi automaticamente i commenti agli articoli più vecchi di X giorni» risolve il problema. Il valore predefinito è 14 giorni; puoi impostare 30, 60 o qualsiasi periodo. Per i siti di notizie è obbligatorio: il contenuto passa in archivio e i commenti si chiudono.

5. Blacklist di parole chiave

Campo blacklist parole chiave nelle impostazioni discussione di WordPress

WordPress ti consente di impostare un elenco di stop word: qualsiasi commento che ne contenga una finisce direttamente nel cestino, saltando la moderazione. Il campo si trova in «Impostazioni → Discussione»; scorri fino a «Chiavi commenti non consentite».

Regola: una parola o frase per riga. Non esagerare: se aggiungi wordpress, verranno catturati anche i commenti legittimi. Punta ai marcatori di spam: casino, termini farmaceutici, estensioni di dominio abbinate a parole specifiche.

Impostazione limite link nei commenti nella pagina discussione di WordPress

Un commento spam contiene quasi sempre un link; è la sua ragione d’essere. WordPress permette di impostare una soglia oltre la quale il commento finisce in moderazione.

Il valore predefinito è 2. Impostarlo a 1 significa che qualsiasi commento con un link richiede l’approvazione manuale. Un valore pari a 0 manda automaticamente nello spam tutti i commenti con collegamenti ipertestuali. Per la maggior parte dei siti, 1 è il valore ottimale: i lettori reali inseriscono raramente più di un link, mentre i bot lo fanno quasi sempre.

7. Rimuovere il campo «Sito web» dal modulo dei commenti

Modulo commenti WordPress con il campo sito web evidenziato

Il campo URL nel modulo dei commenti è una calamita per gli spammer. Vogliono esattamente la possibilità di lasciare un link al proprio sito, mentre il «parere» è generato in automatico: «Ottimo articolo! Ne ho parlato anche io su miodominospam punto ru.»

Rimuovi il campo aggiungendo questo codice a functions.php:

1function wpb_disable_comment_url($fields) {
2 unset($fields['url']);
3 return $fields;
4}
5add_filter('comment_form_default_fields', 'wpb_disable_comment_url');

Fatto questo, il modulo conterrà solo nome, email e testo. Gli spammer perdono interesse, e i lettori reali non notano nemmeno la mancanza; raramente hanno bisogno del campo «Sito web».

8. Disabilitare i commenti sulle pagine degli allegati

Pagina allegato WordPress con modulo commenti aperto

WordPress crea automaticamente una pagina separata per ogni file multimediale caricato: immagini, PDF, video. Per impostazione predefinita, i commenti sono aperti anche su queste pagine. Per un sito con un centinaio di immagini, si tratta di un centinaio di punti d’ingresso aggiuntivi per i bot spam di cui il proprietario di solito non sospetta l’esistenza.

Il plugin Disable Comments su WordPress.org gestisce proprio questo aspetto: dopo l’attivazione, vai nelle sue impostazioni e seleziona il tipo di contenuto «Media». I commenti sulle pagine degli allegati verranno disabilitati, mentre quelli su articoli e pagine resteranno attivi.

9. Vietare l’HTML nei commenti

Il codice qui sotto, aggiunto a functions.php, vieta qualsiasi markup HTML nel corpo del commento. Link, immagini, grassetto e corsivo verranno tutti visualizzati come testo semplice, e i tag saranno convertiti in entità:

1function wpb_comment_post($incoming_comment) {
2 $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
3 $incoming_comment['comment_content'] = str_replace("'", '&#039;', $incoming_comment['comment_content']);
4 return $incoming_comment;
5}
6function wpb_comment_display($comment_to_display) {
7 $comment_to_display = str_replace('&#039;', "'", $comment_to_display);
8 return $comment_to_display;
9}
10add_filter('preprocess_comment', 'wpb_comment_post', '', 1);
11add_filter('comment_text', 'wpb_comment_display', '', 1);
12add_filter('comment_text_rss', 'wpb_comment_display', '', 1);
13add_filter('comment_excerpt', 'wpb_comment_display', '', 1);
14remove_filter('comment_text', 'make_clickable', 9);

Questo metodo funziona bene per i siti in cui i commenti non hanno bisogno di markup. Se il tuo pubblico pubblica frammenti di codice, lascia l’HTML abilitato e affidati ad altri livelli di protezione.

10. Disabilitare trackback e pingback

Impostazione per disabilitare i trackback nella sezione discussione di WordPress

I trackback sono un meccanismo di notifica obsoleto tra blog. Oggi sono principalmente un canale di spam: la maggior parte delle richieste di trackback proviene da bot che non hanno mai letto l’articolo.

Disabilitateli in «Impostazioni → Discussione»: deseleziona «Consenti notifiche di link da altri blog (pingback e trackback)». I trackback già presenti restano; quelli nuovi smettono di apparire.

Plugin e servizi esterni

I metodi integrati bastano per un sito piccolo. Ma se i commenti sono numerosi e la moderazione manuale non riesce a stare al passo, è il momento di collegare strumenti specializzati.

11. Akismet: lo standard antispam di WordPress

Statistiche commenti spam bloccati dal plugin Akismet

Akismet è incluso in ogni distribuzione WordPress. Il suo principio si basa su un controllo in cloud: ogni commento viene confrontato con un database globale di pattern di spam alimentato da milioni di siti. Lo spam finisce in una coda invece di essere pubblicato.

Akismet impara dalle azioni degli utenti: quando il proprietario di un sito segna un commento come spam o ripristina un falso positivo, il sistema tiene conto di quel segnale. Il servizio è gratuito per i blog personali; i siti commerciali hanno abbonamenti a pagamento con statistiche estese.

Pro: nessuna configurazione necessaria dopo aver ottenuto una API key. Contro: senza un account premium, mostra annunci nel pannello di amministrazione e resta indietro rispetto ai piani commerciali in termini di accuratezza.

12. Sucuri Security: web application firewall con protezione anti-bot

Dashboard sicurezza Sucuri con registro audit eventi in WordPress

Sucuri risolve il problema a livello HTTP: il web application firewall (WAF) analizza il traffico in entrata e blocca le richieste provenienti da IP noti per spam, botnet e fonti malevole prima che raggiungano WordPress.

La versione gratuita include audit di sicurezza e monitoraggio dell'integrità dei file. La versione a pagamento aggiunge il WAF con protezione DDoS e anti-forza bruta. Per un sito con centinaia di commenti spam al giorno, Sucuri riduce drasticamente il carico: le richieste dei bot vengono deviate a livello di firewall prima di arrivare a PHP e al database.

13. Antispam Bee: alternativa gratuita con honeypot

Pagina impostazioni plugin Antispam Bee nell'amministrazione WordPress

Antispam Bee è un plugin completamente gratuito senza annunci, piani premium o dati inviati a server di terze parti. Invece del controllo in cloud, utilizza tecniche locali: honeypot (un campo nascosto che i bot compilano automaticamente), misurazione del tempo di compilazione del modulo, verifica della lingua ed espressioni regolari.

Il suo arsenale include commentatori fidati (per email o Gravatar), verifica del paese tramite IP e cancellazione automatica dello spam dopo N giorni. Il plugin è pienamente conforme al GDPR, non memorizza dati personali e non ne invia all'esterno. Ideale per i siti dove la privacy è importante e non c'è budget per soluzioni commerciali.

14. Google reCAPTCHA: verifica «umano o bot»

Finestra verifica Google reCAPTCHA nel modulo commenti WordPress

Google reCAPTCHA determina chi sta compilando il modulo: una persona o uno script. La versione moderna v3 funziona senza interazione dell'utente; i visitatori reali non si accorgono del controllo, mentre i bot incontrano una barriera invisibile.

La connessione richiede una Site Key e una Secret Key dalla Google reCAPTCHA Admin Console. I plugin per form più diffusi (Contact Form 7, WPForms, Gravity Forms) supportano reCAPTCHA nativamente: basta inserire le chiavi. Per un form personalizzato, si usa l'API ufficiale: poche righe di JavaScript e la verifica del token lato server.

Approfondisci la configurazione nel nostro articolo: potenziare la sicurezza di WordPress con Invisible reCAPTCHA.

15. Disqus: sistema di commenti esterno

Pannello moderazione commenti nel sistema Disqus per WordPress

Disqus sostituisce il modulo standard di WordPress con un sistema esterno. Il filtraggio dello spam è a carico di Disqus: gli algoritmi setacciano la spazzatura basandosi su un database globale alimentato da milioni di siti.

Pro: profilo lettore unificato, reazioni e voti, moderazione comoda, social login. Contro: i commenti risiedono sui server Disqus, il piano gratuito mostra pubblicità e il caricamento della pagina rallenta leggermente a causa dell'iframe esterno.

16. Facebook Comments

Blocco commenti Facebook incorporato in un sito WordPress

Se il tuo pubblico è attivo su Facebook, il Facebook Comments Plugin offre un doppio vantaggio: lo spam sparisce (lo filtra Facebook) e l'engagement cresce perché i commenti compaiono nel feed dell'utente e attirano gli amici.

Svantaggio: i lettori senza un account Facebook non possono commentare. Vantaggio: come per Disqus, i commenti sono archiviati sui server del social network, non nel tuo database.

17. Cloudflare: protezione a livello DNS

Impostazioni livello sicurezza nel pannello di controllo Cloudflare

Cloudflare è una CDN e un firewall tra i visitatori e il tuo server. A livello DNS, filtra le richieste provenienti da botnet note e IP con cattiva reputazione.

Esistono cinque livelli di sicurezza, da «Essentially Off» a «I'm Under Attack». Per la protezione antispam, il livello Basso o Medio è sufficiente. Il piano base è gratuito.

Importante: Cloudflare non analizza il contenuto dei commenti. È un perimetro, non un sostituto di un plugin antispam. Il miglior risultato si ottiene con una combinazione: Cloudflare all'esterno e Antispam Bee all'interno di WordPress.

18. Altri plugin affidabili

Se le opzioni principali non sono adatte, ecco qualche altro strumento:

  • WP Armour: protezione honeypot nella sua forma più pura, aggiunge un campo nascosto e verifica il tempo di compilazione del modulo. Nessun captcha, nessuna chiave API. Gratuito, con oltre 100.000 installazioni attive.

  • CleanTalk: un servizio cloud che verifica i commenti confrontandoli con un database globale di IP ed email di spam. Il piano gratuito copre fino a 1.000 verifiche al mese; il piano a pagamento è economico e fatturato annualmente per sito.

  • hCaptcha: un'alternativa indipendente a Google reCAPTCHA. Meno tracciamento, conforme al GDPR, gratuito fino a 1 milione di richieste al mese.

Tabella comparativa delle soluzioni antispam

Plugin / servizio

Principio di protezione

Prezzo

Impatto sulla velocità

Privacy

Metodi integrati

Filtri a livello WP

Gratuito

Nessuno

Dati non trasmessi

Akismet

Verifica cloud

Gratuito / da $10/mese

Minimo

Dati sui server Automattic

Antispam Bee

Honeypot locale + pattern

Gratuito

Nessuno

Dati non trasmessi

Sucuri

WAF a livello HTTP

Gratuito / da $199/anno

Minimo

Dati sui server Sucuri

reCAPTCHA

Analisi comportamentale

Gratuito fino a 1M richieste

Basso

Dati sui server Google

Disqus

Piattaforma esterna

Gratuito / da $12/mese

Moderato

Commenti sui server Disqus

Facebook Comments

Piattaforma esterna

Gratuito

Moderato

Commenti sui server Facebook

Cloudflare

WAF a livello DNS

Gratuito / da $20/mese

Nessuno (accelera)

I dati transitano via Cloudflare

⁉️🤔 Domande frequenti

Si può eliminare completamente lo spam dai commenti?

No, una protezione al 100% non esiste. Gli spammer adattano costantemente gli algoritmi per aggirare i filtri, e anche i migliori plugin lasciano passare una piccola percentuale di spazzatura. Ma una protezione a più livelli (impostazioni integrate + plugin antispam + WAF) riduce lo spam a «uno o due messaggi al mese», facili da pulire manualmente.

Quale metodo dovrebbe scegliere un blog nuovo con budget zero?

Una combinazione di tre passaggi gratuiti: attiva la moderazione manuale (metodo 3), limita i link a uno (metodo 6) e installa Antispam Bee (metodo 13). Richiede 10 minuti e non costa nulla. Per i siti di notizie, aggiungi la chiusura automatica dei vecchi articoli (metodo 4).

Un plugin antispam rallenta il caricamento del sito?

I plugin locali come Antispam Bee, in pratica, no: aggiungono carico solo quando il modulo dei commenti viene inviato, senza influire sulle pagine principali. I servizi cloud (Akismet, CleanTalk) eseguono le verifiche in modo asincrono sui propri server e non incidono sulla velocità di caricamento del sito.

Cosa fare se lo spam continua a passare attraverso tutti i filtri?

Verifica se i bot stanno attaccando le vecchie pagine degli allegati (metodo 8); è una falla comune. Assicurati che i trackback siano disabilitati (metodo 10). Se il problema persiste, aggiungi Cloudflare (metodo 17): blocca le richieste dalle botnet note prima che raggiungano WordPress.

reCAPTCHA è necessario se Antispam Bee è già attivo?

Non necessariamente. Antispam Bee blocca la maggior parte dei bot tramite honeypot e temporizzazione anche senza captcha. Aggiungi un captcha solo se lo spam continua dopo aver installato Antispam Bee; significa che l'attacco non proviene da semplici bot ma da script più avanzati.

Disqus o Facebook Comments: qual è meglio per un blog?

Disqus se il tuo pubblico è tecnico e non legato a un singolo social network. Facebook Comments se il traffico proviene principalmente da Facebook e vuoi ampliare la portata attraverso i feed degli utenti. Un compromesso universale è mantenere il modulo standard di WordPress con un plugin antispam: non esclude nessun lettore.

Cosa installare sul tuo sito nel 2026

La protezione antispam segue il principio della sufficienza ragionevole: ogni livello aggiuntivo introduce complessità, mentre i ritorni diminuiscono. Per la maggior parte dei siti, una combinazione di 3-4 metodi è sufficiente.

Le impostazioni base di WordPress (metodi 2, 3, 6 e 7) bloccano i bot semplici in 5 minuti e sono gratuite. Un plugin antispam locale (Antispam Bee) elimina un ulteriore livello tramite honeypot e temporizzazione, anch'esso gratuito. Con traffico elevato, aggiungi Cloudflare al perimetro; alleggerisce il carico del server.

Inizia subito con i metodi 2, 3 e 6. Tre caselle di spunta nel pannello di amministrazione, risultati immediati. Aggiungi il resto man mano che il sito cresce.