Come risolvere il problema delle email WordPress che non arrivano
Le email di WordPress non arrivano a destinazione? Form di contatto che non inviano notifiche, email di reset password che finiscono nel vuoto, conferme ordine WooCommerce che non raggiungono i clienti — il problema delle email WordPress che non funzionano è uno dei più comuni e frustranti. In questa guida ti spiego perché succede e come risolvere definitivamente configurando un sistema di invio email affidabile.
Perché le email di WordPress non arrivano
WordPress usa la funzione PHP wp_mail() per inviare email, che a sua volta usa la funzione mail() di PHP. Questa funzione invia le email direttamente dal server web, senza autenticazione SMTP. Il problema è che i server di posta dei destinatari (Gmail, Outlook, Yahoo) non si fidano di email inviate in questo modo:
- Mancanza di autenticazione: le email inviate via PHP mail() non hanno autenticazione SPF, DKIM o DMARC configurata correttamente, e vengono trattate come potenziale spam.
- IP del server in blacklist: su hosting condivisi, l’IP del server è condiviso con centinaia di siti. Se anche uno solo invia spam, l’IP finisce in blacklist e tutte le email da quel server vengono bloccate.
- Filtri anti-spam aggressivi: Gmail e Outlook hanno filtri sempre più restrittivi che rifiutano email senza autenticazione adeguata.
- Configurazione del server: su alcuni hosting, la funzione mail() di PHP è disabilitata o limitata per prevenire abusi.
La soluzione: usare un plugin SMTP
La soluzione definitiva è configurare WordPress per inviare email tramite un server SMTP autenticato anziché la funzione mail() di PHP. SMTP (Simple Mail Transfer Protocol) è il protocollo standard per l’invio di email e garantisce autenticazione, crittografia e deliverability molto superiori.
Il plugin più consigliato è WP Mail SMTP, con oltre 3 milioni di installazioni attive. Dopo l’installazione:
- Vai su WP Mail SMTP → Impostazioni.
- Nella sezione “Da Email”, inserisci l’indirizzo email del tuo dominio (es. info@tuosito.it).
- Nella sezione “Da Nome”, inserisci il nome del sito.
- Scegli il mailer (il servizio che invierà le email).
- Configura le credenziali del servizio scelto.
- Usa la funzione “Email di test” per verificare che tutto funzioni.
Opzione 1: SMTP del tuo hosting
Il metodo più semplice è usare il server SMTP del tuo hosting. Se hai un indirizzo email associato al dominio (configurato nel pannello hosting), puoi usare le stesse credenziali:
- Server SMTP: solitamente mail.tuosito.it o l’indirizzo specifico fornito dall’hosting.
- Porta: 587 (con TLS) o 465 (con SSL).
- Username: l’indirizzo email completo.
- Password: la password dell’account email.
Questo metodo funziona bene per siti con volumi di email bassi (meno di 100 email al giorno). Per volumi maggiori, il server email dell’hosting potrebbe avere limiti di invio giornalieri.
Opzione 2: servizi di invio email dedicati
Per volumi maggiori o per la massima deliverability, usa un servizio di invio email dedicato. Questi servizi gestiscono SPF, DKIM, DMARC e la reputazione IP automaticamente:
- Brevo (ex Sendinblue): 300 email gratuite al giorno, API facile da configurare. Il plugin WP Mail SMTP ha un’integrazione diretta. Ottimo per la maggior parte dei siti WordPress.
- Mailgun: 1000 email gratuite al mese per i primi 3 mesi, poi a consumo. Eccellente deliverability e API robusta. Consigliato per siti con volumi importanti.
- Amazon SES (Simple Email Service): il più economico per volumi elevati (0,10$ per 1000 email). Richiede una configurazione iniziale più complessa ma è imbattibile per rapporto qualità-prezzo su e-commerce con migliaia di ordini.
- SendGrid: 100 email gratuite al giorno. Usato da molte aziende per email transazionali e marketing. Buona integrazione con WordPress.
- Gmail/Google Workspace: se usi Google Workspace, puoi configurare l’invio tramite l’API di Gmail. WP Mail SMTP supporta l’autenticazione OAuth 2.0 con Google, che è il metodo più sicuro.
Configurare SPF, DKIM e DMARC
Per massimizzare la deliverability, configura i record DNS di autenticazione email per il tuo dominio:
- SPF (Sender Policy Framework): un record TXT nel DNS che specifica quali server sono autorizzati a inviare email per il tuo dominio. Senza SPF, i server destinatari non possono verificare che l’email sia legittima.
- DKIM (DomainKeys Identified Mail): una firma crittografica aggiunta a ogni email che permette al destinatario di verificare che il messaggio non sia stato alterato durante il transito.
- DMARC (Domain-based Message Authentication): una policy che dice ai server destinatari cosa fare con le email che falliscono i controlli SPF e DKIM (rifiutare, mettere in quarantena o accettare).
Il servizio di invio email che scegli ti fornirà i record DNS specifici da aggiungere. La configurazione avviene nel pannello DNS del tuo hosting o registrar. Dopo l’aggiunta, i record possono richiedere fino a 48 ore per propagarsi.
Verificare che le email funzionino
Dopo la configurazione, esegui questi test:
- Email di test dal plugin: WP Mail SMTP include una funzione di test che invia un’email all’indirizzo che specifichi. Verifica che arrivi nella casella principale e non nello spam.
- Test del form di contatto: compila il form di contatto del sito e verifica che la notifica arrivi.
- Test di reset password: dalla pagina di login, richiedi un reset password e verifica che l’email arrivi.
- Verifica i record DNS: usa MXToolbox.com per verificare che i record SPF, DKIM e DMARC siano configurati correttamente.
- Test dello spam score: invia un’email di test a mail-tester.com per ottenere un punteggio di spam del tuo setup. Un punteggio di 9/10 o superiore è buono.
Plugin alternativi
Se WP Mail SMTP non soddisfa le tue esigenze, ecco le alternative:
- FluentSMTP: gratuito e open source al 100%, senza versione premium. Supporta Amazon SES, Gmail, Outlook, Mailgun, SendGrid, Brevo e SMTP generico. Interfaccia moderna e log delle email integrato.
- Post SMTP: gratuito con log dettagliati delle email, report di errore e supporto per OAuth 2.0. Utile per diagnosticare problemi di deliverability grazie ai log completi.
Problemi comuni dopo la configurazione
- Le email arrivano nello spam: verifica che SPF, DKIM e DMARC siano configurati. Controlla lo spam score su mail-tester.com.
- Errore di autenticazione SMTP: verifica username, password, server e porta. Alcune caselle email richiedono password per app specifiche (Gmail con 2FA attivo, ad esempio).
- Timeout di connessione: il server potrebbe bloccare le connessioni SMTP in uscita. Prova a cambiare porta (587 → 465 o viceversa) o contatta l’hosting.
Le email del tuo sito non arrivano?
Configurare un sistema di email affidabile per WordPress richiede attenzione ai dettagli: SMTP, record DNS, autenticazione e test. Se le email del tuo sito continuano a non arrivare o a finire nello spam, il team di SoccorsoWP può configurare tutto il sistema email per te, dalla scelta del provider alla configurazione DNS. Apri un ticket e assicurati che le email del tuo sito arrivino a destinazione.