Gestisci un negozio online con WooCommerce in Italia? Ricevi segnalazioni da clienti che non ricevono le email di conferma ordine, o addirittura le vedono finire in spam? La causa quasi sempre è che WordPress, per default, invia tramite la funzione php mail() del server di hosting, senza SMTP dedicato e senza autenticazione di dominio (SPF/DKIM). Il risultato: i mailserver di Gmail, Yahoo, Libero e dei provider italiani non si fidano e taggano il messaggio come spam.
La soluzione è diretta: installare il plugin gratuito WP Mail SMTP e collegarlo a un provider SMTP affidabile. Guida completa nei prossimi paragrafi.
Perché wp_mail() non funziona per le email ordini
Per default, WordPress usa la funzione php mail() per spedire tutte le notifiche (email registrazione, reset password, notifiche ordini WooCommerce). Questo metodo ha tre problemi critici:
- Niente SMTP — il messaggio esce direttamente dal server di hosting, spesso con un nome host generico (tipo mail.server123.com).
- Assenza di SPF/DKIM — senza configurare SPF e DKIM sul dominio, i mailserver riceventi non possono verificare che tu sia veramente il proprietario del dominio mittente.
- IP di reputazione sconosciuta — l’IP di hosting mutuato da decine di clienti ha poca reputazione; se uno di loro spamma, tutti ne risentono.
Gmail, Yahoo e anche Libero (@libero.it), Virgilio (@virgilio.it), TIM (@tim.it) richiedono SPF e DKIM per i bulk sender. Se manchi di queste autenticazioni, il tasso di arrivo in spam è molto alto.
Installare e configurare WP Mail SMTP
Passo 1: Installa il plugin.
- Accedi al back-end di WordPress (wp-admin).
- Vai a Estensioni > Aggiungi nuova.
- Cerca "WP Mail SMTP" (sviluppato da WPForms).
- Clicca Installa e poi Attiva.
Passo 2: Scegli il mailer.
Una volta attivato, il plugin aggiunge un menu "WP Mail SMTP" in WordPress. Clicca e vedrai un form dove scegliere il mailer:
- Gmail / Google Workspace — ideale se usi Gmail aziendale per il tuo shop; il plugin genera OAuth2 token automaticamente.
- SendGrid — ESP globale con piano gratuito (fino a 100 email/giorno); ottimo per test.
- Mailgun — simile a SendGrid, buono per volumi medi.
- SMTP generico — se il tuo hosting ha un SMTP locale o usi MailUp/4Dem/GetResponse, usa questa opzione.
Per gli italiani: test gratuito di deliverability con il nostro strumento dopo aver configurato il mailer.
Scegliere il provider SMTP giusto per l’Italia
Se sei in Italia e preferisci un ESP locale o un servizio affidabile, ecco le scelte più comuni:
- MailUp — grande ESP italiano (Missinglink), specializzato in email + SMS. Piano SMTP disponibile anche in versione entry-level. Ottima reputazione presso provider italiani.
- 4Dem — altro ESP 100% italiano, SMTP facile da configurare, supporto in italiano.
- Gmail (Workspace) — se usi Google Workspace aziendale, è già pronto e funziona bene con WP Mail SMTP via OAuth2.
- Brevo (ex-Sendinblue) — servizio internazionale con buona copertura italiana, piano gratis fino a 300 email/giorno.
- GetResponse — marketing platform con SMTP integrato, localizzato in italiano.
Una volta scelto, copia le credenziali SMTP (host, port, username, password) e incollale nel form di WP Mail SMTP.
Configurare SPF e DKIM per il tuo dominio
Qui inizia la parte critica. Anche con WP Mail SMTP collegato a un SMTP serio, se SPF e DKIM non sono configurati, il tasso di spam rimane alto.
SPF (Sender Policy Framework): comunica ai mailserver quali server SMTP sono autorizzati a spedire email dal tuo dominio. Accedi al pannello del registrar/hosting dove gestisci i record DNS. Trova la sezione DNS e aggiungi un record TXT:
v=spf1 include:sendgrid.net ~all(Se usi SendGrid; adatta il dominio al provider scelto: MailUp usa "include:mailup.com", Gmail usa "include:_spf.google.com", etc.)
DKIM (DomainKeys Identified Mail): firma criptograficamente ogni email con una chiave privata del tuo dominio. Il mailer provider (SendGrid, MailUp, etc.) ti genererà un record DKIM con una coppia di chiavi. Copia il record DKIM pubblico (di solito un grande TXT) nei DNS del tuo dominio.
Dopo aver aggiunto SPF e DKIM, aspetta 15–60 minuti per la propagazione DNS. Poi verifica con il nostro test inbox placement: carica una email e vedi se arriva in Inbox su Libero, Gmail, Outlook, etc.
Testare le email di ordine prima del lancio
Non affidarti al "sembra funzionare". Fai un test reale: crea un ordine di prova nel tuo shop e controlla:
- L’email arriva nella tua inbox di test (personale, Gmail, Libero, Outlook)?
- Oppure finisce in Spam?
- Sono visibili gli header di autenticazione (SPF PASS, DKIM PASS)?
Il nostro strumento check.live-direct-marketing.online ti permette di inviare un’email a indirizzi seed reali presso Gmail, Libero, Virgilio, Outlook e oltre 15 altri provider. Vedrai screenshot dell’email vera negli indirizzi riceventi e i veredetti di SPF/DKIM/DMARC. Gratuito, senza registrazione.
Troubleshooting: i log e come debuggare
Se le email ancora non arrivano dopo aver configurato WP Mail SMTP e SPF/DKIM:
- Verifica i log di WP Mail SMTP — il plugin ha una sezione "Logs" nel menu. Leggi gli errori di connessione SMTP (spesso è un errore di autenticazione o porta bloccata dal hosting).
- Controlla i record DNS — usa un tool online (es. MXToolbox, Dig) per verificare che SPF e DKIM siano effettivamente nei DNS. A volte il registrar richiede ore per aggiornare.
- Contatta l’hosting — se la porta SMTP 587 è bloccata dal firewall del server, WP Mail SMTP non potrà connettersi. Chiedi al supporto hosting di sbloccare la porta per il tuo provider SMTP.
- Prova SMTP generico vs OAuth2 — se usi Gmail, prova prima con OAuth2 (più semplice), poi eventualmente passa a credenziali SMTP dirette se il client OAuth ha limiti.