Que WordPress no envíe correos es una de esas cosas que te arruinan el día. Y no hablo solo del típico «no llega el correo de recuperación de contraseña». Hablo de que tu tienda online deja de mandar confirmaciones de pedido, tus formularios de contacto se quedan mudos y el cliente piensa que le has ignorado. Un error al enviar correos electrónicos en WordPress no es una tontería: es dinero y reputación.
La mala noticia: WordPress no envía correos por sí mismo. Usa la función wp_mail() de PHP, que a su vez tira del servidor donde esté alojado. Y ahí empieza el desastre. Muchos hostings compartidos tienen esa función capada, mal configurada o marcada como sospechosa de spam. Así que el primer paso no es tocar tu web, es entender que el problema suele estar fuera.
Por qué WordPress deja de enviar correos (y no es culpa tuya)
El error al enviar correos electrónicos en WordPress casi nunca aparece por un bug del core. Aparece por uno de estos cuatro motivos: el servidor no permite el envío, falta autenticación SMTP, tu dominio no está verificado o un plugin está interceptando la función de correo.
El más común con diferencia: hosting compartido sin SMTP. El servidor usa sendmail o similar, pero los grandes proveedores (Gmail, Outlook) rechazan esos correos porque no pasan SPF ni DKIM. Resultado: el correo sale, pero rebota o cae en spam. Y tú no te enteras hasta que un cliente se queja.
Otro clásico: plugins de contacto o de comercio electrónico que intentan enviar con su propio método y chocan con la configuración del hosting. WooCommerce, sin ir más lejos, depende de wp_mail(). Si esa función falla, los pedidos se quedan sin confirmación.
Cómo detectar el fallo exacto antes de tocar nada
Antes de desactivar plugins a lo loco, instala un plugin de logs de correo. WP Mail Logging o Email Log te dicen si el correo se ha generado, si ha salido y si ha dado error. Sin esa información, estás disparando a ciegas.
Si el log dice «enviado» pero el correo no llega, el problema es de entrega: SPF, DKIM, DMARC o lista negra. Si el log dice «error», el problema es de configuración del servidor o de conflicto entre plugins.
También puedes usar Check Email, un plugin oficial que envía un correo de prueba y te muestra exactamente qué ha pasado. Es la forma más rápida de confirmar si tu error al enviar correos electrónicos en WordPress es de salida o de entrega.
La solución que funciona en 2026: SMTP autenticado sí o sí
Olvídate de arreglar la función nativa de PHP. No merece la pena. La solución real y definitiva es configurar un plugin SMTP que se conecte a un proveedor externo. Los tres que mejor rinden ahora mismo:
- WP Mail SMTP: el más completo, con asistentes para Gmail, Outlook, Amazon SES y cualquier SMTP genérico.
- Fluent SMTP: ligero, gratuito y con logs integrados. Ideal si no quieres pagar.
- Post SMTP: muy bueno para diagnosticar, porque muestra el diálogo completo con el servidor.
Con cualquiera de ellos, el proceso es el mismo: creas una cuenta SMTP en tu proveedor de correo (o en un servicio transaccional como Brevo, Mailgun o Amazon SES), metes las credenciales en el plugin y listo. A partir de ahí, los correos salen autenticados y firmados. El error al enviar correos electrónicos en WordPress desaparece en el 90% de los casos.
Un matiz importante: no uses tu correo personal de Gmail como remitente si tienes volumen. Gmail tiene límites diarios y te acabará bloqueando. Para tiendas o formularios con tráfico, tira de un servicio transaccional. Cuesta cuatro duros y te ahorra disgustos.
Qué hacer si el problema no es SMTP
Si has configurado SMTP y sigues con el error al enviar correos electrónicos en WordPress, toca revisar tres cosas más:
- Conflictos de plugins: desactiva todos los plugins de correo y formularios, deja solo el SMTP y prueba. Si funciona, ve activando uno a uno hasta encontrar al culpable.
- Permisos del servidor: algunos hostings bloquean la función fsockopen o el puerto 587. Pregunta a tu proveedor si están abiertos.
- Lista negra: comprueba tu dominio en MXToolbox o MultiRBL. Si aparece listado, solicita la eliminación y revisa que no tengas un plugin comprometido enviando spam.
Hay un caso que veo mucho y que casi nadie menciona: el correo del administrador de WordPress está mal puesto o es falso. Si en Ajustes > Generales tienes un correo que no existe, los correos salientes pueden rebotar. Revisa eso antes de volverte loco con SMTP.
Errores típicos que te van a hacer perder tiempo
El primero: cambiar el correo del remitente sin tocar el «From» real. Muchos plugins usan el correo del administrador como remitente, aunque tú pongas otro en el formulario. Si ese correo es de un dominio distinto al de tu web, los filtros antispam lo tumban.
El segundo: no configurar SPF ni DKIM en el DNS. De poco sirve un SMTP impecable si tu dominio no está autorizado a enviar. Es un registro TXT que se pone en tu proveedor de dominio y que muchos hostings hacen por ti, pero no todos. Compruébalo.
El tercero: usar el mismo correo para enviar y para recibir notificaciones masivas. Separa siempre: un correo para el sitio web y otro para tu buzón personal. Así evitas que un bucle de correos te llene la bandeja y que el servidor te marque como spammer.
Conclusión sin rodeos
El error al enviar correos electrónicos en WordPress no se arregla rezando ni reinstalando WordPress. Se arregla sacando el envío de correos de tu servidor y llevándolo a un SMTP autenticado. Eso es el 90% de la solución. El otro 10% es revisar DNS, conflictos de plugins y listas negras.
Si después de todo esto sigues igual, contacta con tu hosting y pídeles los logs del servidor de correo. No aceptes un «no podemos hacer nada». Tienes derecho a saber por qué tus correos no salen. Y si te dicen que en hosting compartido no se puede, cambia de hosting o contrata un servicio transaccional. En 2026, tener una web que no envía correos es una web rota.