
🔧 Por qué WordPress no envía correos electrónicos y cómo solucionarlo
Revisó su correo electrónico y no encontró nada. Ni el mensaje de restablecimiento de contraseña, ni la confirmación del pedido, ni el correo de prueba del formulario de contacto. Los clientes escriben al soporte, pero las respuestas nunca llegan. WordPress permanece en silencio y usted no logra entender por qué.
Este problema es dolorosamente familiar para cualquiera que haya lanzado un sitio en WordPress. El servidor de correo predeterminado funciona a través de mail(), una función integrada de PHP. Los proveedores de alojamiento a menudo la bloquean y los mensajes terminan en spam o simplemente no se envían.
Adelanto: esto se puede solucionar en 15 a 20 minutos configurando un servidor SMTP. A continuación, encontrará un desglose paso a paso de las causas, el diagnóstico y dos métodos de configuración que funcionan: mediante la API de Gmail y mediante Mailgun. Sin pánico, con capturas de pantalla.
💡 Resumen rápido:
- Compruebe si el servidor de correo de WordPress está activo; el plugin
Check Emailmuestra la situación real en un minuto - Descubra por qué
mail()no es fiable y cómo SMTP resuelve el problema - Configure Gmail SMTP con OAuth 2.0, paso a paso, desde Google Console hasta el estado verde
- Conecte Mailgun a través de
WP Mail SMTP, para sitios con tráfico que necesitan más de 100 correos al día - Resuelva preguntas frecuentes: por qué los correos van a spam, qué puerto elegir, qué hacer con los errores de autenticación
Por qué WordPress no envía correos electrónicos
WordPress utiliza la función wp_mail() por defecto, que internamente llama a la función mail() de PHP. El problema es que mail() es un mecanismo básico sin autenticación. Los servicios de correo modernos como Gmail, Yahoo y Outlook exigen cifrado y verificación del remitente. Sin ellos, los mensajes son bloqueados por el alojamiento o marcados como spam por el servidor receptor.
La segunda causa común es la falta de registros DKIM y SPF en el DNS. Estas son firmas digitales que le indican a los servidores de correo: «el remitente es legítimo, el mensaje no ha sido falsificado». Sin ellos, Gmail enviará su mensaje directamente a la carpeta de «Spam».
Por último, los plugins pueden ser los culpables. Algunas soluciones antispam y plugins de formularios de contacto interceptan la cola de correo y bloquean los envíos «sospechosos». Esto es especialmente cierto para los envíos masivos, para los cuales mail() es fundamentalmente inadecuado.
Cómo comprobar el funcionamiento del servidor de correo de WordPress
Antes de sumergirse en la configuración SMTP, descarte el escenario de que mail() esté inactivo. El plugin Check Email hace exactamente esto: envía un mensaje de prueba a través del mecanismo estándar de WordPress y muestra el resultado.
Instale Check Email desde el repositorio de WordPress (Plugins → Añadir nuevo → escriba «Check Email»), actívelo y vaya a Herramientas → Check Email. Introduzca su dirección, haga clic en «Send test email» y en un par de segundos verá un informe.

Revise las carpetas de «Bandeja de entrada» y «Spam». Si el mensaje llegó, mail() funciona y el problema está en un plugin específico (formulario de contacto, WooCommerce). Contacte con el soporte de ese plugin. Si no hay ningún mensaje, mail() está bloqueado por el alojamiento y necesita SMTP.
Cómo configurar SMTP a través de Gmail en WordPress
SMTP (Protocolo Simple de Transferencia de Correo) es un protocolo con autenticación y cifrado. A diferencia de mail() simple, los correos electrónicos a través de SMTP pasan una verificación de identidad, no son bloqueados por el alojamiento y rara vez terminan en spam.
El primer método es el plugin Gmail SMTP, que conecta WordPress directamente a su cuenta de Google mediante OAuth 2.0. Tiene más de 100 reseñas en WordPress.org y actualizaciones periódicas. La versión gratuita permite enviar hasta 100 correos al día, lo cual es suficiente para un sitio pequeño o un blog.
Instale Gmail SMTP desde el repositorio oficial de WordPress, actívelo.

A continuación, necesita Google Cloud Console. Vaya a console.cloud.google.com, cree un proyecto nuevo.

En la barra lateral, seleccione «APIs y servicios» → «Credenciales», haga clic en «Crear credenciales» y elija «ID de cliente de OAuth». El sistema le pedirá que configure la pantalla de consentimiento, especifique el tipo «Externo» y complete los campos obligatorios (nombre de la aplicación, correo electrónico de soporte). Haga clic en «Guardar y continuar».

Vuelva a la creación del ID de cliente de OAuth: el tipo de aplicación es «Aplicación web», el nombre es «Gmail SMTP».

Ahora regrese al panel de administración de WordPress: en los ajustes del plugin Gmail SMTP, copie la URL de redireccionamiento autorizado.

Regrese a Google Console, pegue la URL copiada en el campo «Authorized redirect URIs» y guarde. Tras guardar, aparecerá una ventana con el Client ID y el Client Secret; copie ambos valores y péguelos en los campos correspondientes del plugin.
Especifique la dirección de Gmail desde la cual se enviarán los correos (la misma que usó para crear el proyecto), complete el campo «From Email Address» y establezca «From Name» (el nombre de su sitio). El puerto SMTP es 587 para TLS. Si utiliza un certificado SSL, configure 465. Haga clic en «Save Changes», luego en «Grant Permission» y complete la autenticación de Google.

Tras conceder el permiso con éxito, el plugin mostrará un estado verde «Connected». Envíe un correo de prueba; si llega, ya está todo listo.
Cómo configurar Mailgun para enviar correos en WordPress
Si su sitio necesita más de 100 correos al día y usted desea una infraestructura de entrega confiable, considere Mailgun. Se trata de un servicio de correo para desarrolladores con un plan gratuito de hasta 100 correos al día (la recepción es gratuita), y los planes de pago comienzan en $35 al mes por 50 000 correos. La principal ventaja es la analítica detallada de entregas: puede ver si un correo fue abierto o no, y si llegó a la carpeta de spam.

Regístrese en mailgun.com. Tras crear una cuenta, añada un dominio; Mailgun le pedirá que ingrese un subdominio (por ejemplo, mg.your-site.com) y le proporcionará los registros DNS: TXT para la verificación, MX para el enrutamiento de correo y CNAME para el seguimiento de aperturas.
Ingrese al panel de su hosting (cPanel, ISPmanager o similar), abra el editor de DNS y añada los registros proporcionados por Mailgun:
- Registro TXT: el nombre es su subdominio, el tipo es TXT, el TTL es 14400 y el dato TXT es el valor del panel de Mailgun
- Registro MX: en la sección «MX Entry», ingrese la prioridad y el destino de Mailgun
- CNAME: para el seguimiento de aperturas y clics
La propagación de los DNS toma desde unos minutos hasta 48 horas. Verifique el estado en la sección «Domains» del panel de Mailgun; cuando aparezca «Active», puede continuar.
Para conectar Mailgun con WordPress, instale WP Mail SMTP, el plugin SMTP más popular con más de 3 millones de instalaciones activas. Vaya a Ajustes → WP Mail SMTP; en «From Email» especifique una dirección de su dominio y en «From Name» el nombre de su sitio. En el campo «Mailer», seleccione «Mailgun».

Pegue la Private API Key del panel de Mailgun (sección «API Keys») y el nombre de dominio que registró. Active la opción «Set the return path to match the From Email»; esto alinea la dirección de retorno y reduce la probabilidad de caer en spam. Haga clic en «Save Settings» y envíe una prueba desde la pestaña «Email Test».
Videotutorial: configurar SMTP en WordPress
Si prefiere ver en lugar de leer, aquí tiene un videotutorial sobre cómo configurar SMTP en WordPress, desde la instalación del plugin hasta el primer correo enviado:
⁉️🤔 Preguntas frecuentes
¿Por qué los correos de WordPress llegan a spam incluso con SMTP configurado?
La mayoría de las veces el problema son los registros SPF y DKIM faltantes en el DNS del dominio. Sin ellos, el servidor de correo del destinatario no puede verificar que su servidor tiene derecho a enviar correos desde este dominio. Añada un registro TXT SPF (
v=spf1 include:_spf.google.com ~allpara Gmail o similar para Mailgun) y una clave DKIM desde el panel del servicio de correo. El segundo factor es la reputación de la IP: en alojamientos baratos, la dirección IP puede haber sido señalada por envíos de spam antes que usted.
¿Qué puerto SMTP elegir: 587 o 465?
El puerto
587con TLS es el estándar moderno recomendado por IETF para el envío de correo de cliente. El puerto465con SSL es una alternativa obsoleta que muchos proveedores aún soportan por compatibilidad. Use587con TLS a menos que el servicio de correo requiera explícitamente465.
El plugin SMTP de Gmail da error de autenticación. ¿Qué hacer?
Tres causas más comunes: las URL de redireccionamiento no coinciden (verifique que la misma dirección esté en Google Console y en el plugin), la aplicación en Google Cloud está en estado "Prueba" (cámbiela a "Producción" o añada su Gmail a la lista de usuarios de prueba), o la verificación en dos pasos de Google está activada sin una contraseña de aplicación (cree una contraseña de aplicación en los ajustes de seguridad de Google).
¿Puedo enviar correos masivos a través de SMTP de Gmail?
No. Gmail tiene límites estrictos: 100 correos al día mediante el plugin
Gmail SMTP, hasta 2000 a través de Google Workspace. Para marketing por correo y envíos regulares, use Mailgun, Brevo (antes Sendinblue) o SendGrid, que tienen integraciones con WordPress e infraestructura de entrega dedicada.
¿Necesito un plan de pago de Mailgun para un sitio pequeño?
El nivel gratuito de Mailgun (100 correos al día) es suficiente para un sitio promedio: notificaciones de pedidos de WooCommerce, restablecimientos de contraseña, confirmaciones de registro, correos del formulario de contacto. Un plan de pago tiene sentido cuando el volumen diario supera el centenar o necesita analíticas de apertura con almacenamiento de registros superior a 24 horas.
¿Por qué no debería confiar en el mail() integrado en WordPress?
La función
mail()no autentica al remitente, no cifra la conexión y no añade firmas DKIM/SPF. La mayoría de los proveedores de alojamiento la bloquean a nivel de servidor (por riesgo de ataques de spam) o pasan el tráfico a través de IP compartidas con baja reputación. El resultado: los correos no llegan en una parte significativa de los casos, y los que llegan a menudo se marcan como spam.
Vale la pena cambiarse a SMTP ahora mismo
Si los correos de restablecimiento de contraseña no salen de su sitio, los clientes no reciben notificaciones de pedidos y el formulario de contacto está en silencio, la respuesta es clara: necesita SMTP hoy. Esto no es una cuestión de "vale la pena", es una cuestión de "cuál exactamente".
Para un blog personal y una página de aterrizaje, la combinación de Gmail SMTP con su cuenta de Gmail es suficiente. Configúrelo en 20 minutos y olvídese del tema. Para un sitio con productos, cursos o usuarios, obtenga WP Mail SMTP con Mailgun: el nivel gratuito cubre las necesidades de una tienda en línea típica, y las analíticas de entrega le alertarán si algo va mal.
No lo posponga. Mientras lee este párrafo, el cliente de alguien no recibió un correo de confirmación. SMTP resuelve esto de una vez por todas.



