¿Quieres averiguar por qué wp_mail no funciona y solucionarlo?
Problemas con la wp_mail()
son muy comunes para los usuarios de WordPress. Y cuando no funciona correctamente, los correos electrónicos de WordPress no se envían (lo cual es un gran problema).
Pero es muy fácil de arreglar wp_mail()
. En este post, le mostraremos la forma más sencilla de resolver wp_mail()
para que sus correos electrónicos lleguen siempre a sus destinatarios sin fallos.
Arregla ya tus correos de WordPress 🙂 .
¿Qué es wp_mail?
wp_mail()
es una función de PHPMailer que genera y envía sus correos electrónicos de WordPress. Por defecto, casi todos los plugins de WordPress utilizan wp_mail()
para enviar correos electrónicos. Pero el wp_mail()
no es muy fiable. Así que cuando algo va mal con él, usted encontrará problemas de entrega de correo electrónico a través de todo su sitio.
¿Por qué wp_mail no funciona?
Hay algunas razones comunes wp_mail()
puede que no te funcione:
- El correo PHP está deshabilitado por su servidor web: El PHP Mailer es una forma insegura de enviar correos electrónicos y puede ser explotado por hackers y spammers. Por ello, muchos proveedores de alojamiento web deshabilitan PHP Mailer en sus servidores. Desde
wp_mail()
depende de PHP para enviar correos electrónicos, no funciona cuando PHP está deshabilitado en su alojamiento web. - Sus correos electrónicos se marcan como spam: Un gran problema de la
wp_mail()
es que sólo se diseñó para simplificar. Así que los correos electrónicos generados por esta función no incluyen ninguna información de autenticación para mostrar que el correo electrónico proviene de una fuente legítima. Como resultado, sus correos electrónicos son vistos como spam y nunca llegan a la bandeja de entrada de su destinatario. - Su sitio se ejecuta en localhost: Si su sitio aún está en fase de desarrollo, no podrá enviar ningún correo electrónico con
wp_mail()
. Esto se debe a quewp_mail()
no está soportado en localhost. En su lugar, necesitará un método de entrega de correo electrónico alternativo como SMTP para generar y enviar correos electrónicos de forma fiable.
Lo bueno es que hay una única solución para todos estos problemas con wp_mail no funciona. Y la solución es utilizar el plugin WP Mail SMTP.
Cómo reparar wp_mail fácilmente
La forma más fácil de solucionar todos los problemas con el wp_mail()
es reconfigurarlo para usar SMTP en lugar de depender de PHP. La forma más sencilla de conseguirlo es utilizando WP Mail SMTP.

Este plugin configura su sitio WordPress para utilizar SMTP, que es un método probado para enviar sus correos electrónicos porque añade autenticación adecuada a sus mensajes.
Por otra parte, este plugin envía sus correos electrónicos a través de un proveedor de servicios de correo electrónico de terceros dedicado en lugar de su alojamiento web predeterminado. Como resultado, la entregabilidad de su correo electrónico está siempre garantizada.
Además, WP Mail SMTP viene con un montón de características adicionales como:
- Seguimiento de errores
- Resumen semanal por correo electrónico
- Registros detallados de correo electrónico
- ... y más
1. Instale el plugin WP Mail SMTP
Para empezar, necesitarás una suscripción de pago a WP Mail SMTP o la versión gratuita. Puedes conseguir cualquiera de las dos para arreglar los problemas de wp_mail() pero la versión gratuita no incluye funciones avanzadas como el resumen semanal de emails y los registros de emails.
Cuando hayas comprado tu plan, dirígete a tu panel de WP Mail SMTP y navega hasta la pestaña Descargas. Desplázate hacia abajo y haz clic en el botón Descargar WP Mail SMTP.

Una vez que el archivo zip haya terminado de descargarse, abra el panel de control de WordPress de su sitio. En la barra de menú de la izquierda, haz clic en Plugins y, a continuación, en Añadir nuevo.

Luego, haz clic en "Seleccionar archivo" y navega hasta la ubicación donde descargaste el archivo zip SMTP de WP Mail. Haz doble clic en él y selecciona "Instalar ahora" y, a continuación, "Activar complemento" .

Esto debería lanzar el Asistente de Configuración automáticamente. Si no se inicia, puede hacerlo manualmente yendo a WP Mail SMTP " Configuración y pulsando el botón Iniciar Asistente de Configuración.

2. Conectarse a un servicio Mailer
El Asistente de Configuración le permite elegir un servicio de correo de terceros para enviar sus correos electrónicos. Así que en este paso, vamos a configurar un servicio de entrega de correo electrónico adecuado para reemplazar el problemático alojamiento web predeterminado de WordPress.
Cuando haya terminado con este paso, WP Mail SMTP reconfigurará los valores predeterminados de wp_mail()
Función para usar SMTP a partir de ahora y evitar problemas con el correo electrónico. Para comenzar, haga clic en el Empecemos botón.

En la siguiente pantalla encontrará una lista de servicios de correo recomendados. Puedes elegir cualquier servicio de correo de esta lista. Si está empezando, una de las mejores opciones es utilizar la versión de prueba gratuita de SendLayer.

También puede obtener más información sobre los diferentes proveedores de correo electrónico transaccional para tomar una mejor decisión. Cuando haya decidido qué servicio de correo desea usar, haga clic en el enlace a continuación para configurarlo:
Mailers disponibles en todas las versiones | Mailers en WP Mail SMTP Pro |
---|---|
SendLayer | Amazon SES |
SMTP.com | Microsoft 365 / Outlook.com |
Brevo (antes Sendinblue) | Zoho Mail |
Espacio de trabajo de Google / Gmail | |
Mailgun | |
Matasellos | |
SendGrid | |
SparkPost | |
Otros SMTP |
Siga cuidadosamente las instrucciones del documento y vuelva a este artículo para finalizar la configuración de WP Mail SMTP.
¿Desea configurar varios emisores de correo? Puede hacerlo en la configuración de Conexiones adicionales, luego seleccione una Conexión de copia de seguridad y configure el Enrutamiento inteligente.
3. Habilitar registros de correo electrónico detallados (opcional)
Una vez que haya configurado y conectado con éxito su correo con WP Mail SMTP, el Asistente de Configuración le pedirá que elija las características de correo electrónico que desea habilitar.
La capacidad de entrega mejorada de correo electrónico y el seguimiento de errores de correo electrónico están habilitados de forma predeterminada y no se pueden desactivar, pero recomiendo encarecidamente activar también los registros de correo electrónico detallados .

Al activarse, esta herramienta registra todos los correos electrónicos generados y enviados por tu sitio de WordPress. Además, guarda una gran cantidad de datos útiles en Informes Completos de Correo Electrónico , como:
- Número de aperturas y clics en tus correos de WordPress
- Número de anexos
- Estado de entrega del correo electrónico
- Fecha y asunto de cada correo electrónico
- Reenviar o reenviar correos electrónicos fallidos
- ...y más

La función de resumen semanal por correo electrónico es una forma muy útil de supervisar el rendimiento de su correo electrónico. Cuando esté activada, le enviará un correo electrónico cada semana con un resumen rápido sobre:
- Total de correos electrónicos enviados la semana pasada
- Número de envíos de correo electrónico confirmados
- Número de envíos de correo electrónico no confirmados
- Correos electrónicos fallidos
Con este resumen, puedes realizar un seguimiento de qué tan bien está funcionando tu función wp_mail y verificar si hay errores a medida que aparecen.

La función de alertas instantáneas de correo electrónico te avisa cada vez que falla el envío de un mensaje para que puedas solucionar el problema rápidamente. Así tus usuarios no se perderán mensajes importantes.

Así que, si quieres asegurarte de que todo va bien con tus correos electrónicos en todo momento, te recomendamos activar estas funciones extra para sacar el máximo partido a WP Mail SMTP.
4. Realizar una prueba de correo electrónico
Después de haber completado todos los pasos anteriores, el Asistente de Configuración SMTP de WP Mail enviará un email de prueba para verificar si todo ha sido configurado correctamente.
Si no hay problemas con la configuración elegida, el asistente de configuración SMTP de WP Mail mostrará un mensaje de éxito.

En esta fase, debería esperar hasta que se hayan generado unos cuantos correos electrónicos para asegurarse de que no se encuentra de nuevo con el error 'could not instantiate mail function'.
Si no quieres esperar, puedes ir a WP Mail SMTP » Herramientas » Prueba de correo electrónico para enviar algunos correos electrónicos de prueba desde WP Mail SMTP.

Aquí tienes una captura de pantalla de cómo se vería el mensaje de prueba en tu bandeja de entrada, para que sepas qué esperar. Esto garantiza que tus correos se envíen correctamente.

5. Reenvío instantáneo de correos electrónicos fallidos
Puedes reenviar fácilmente los correos electrónicos fallidos desde el registro de correo SMTP de WP Mail. Para ello, debes haber activado la opción "Almacenar el contenido de todos los correos enviados" en el Asistente de configuración.
Si no lo hiciste, puedes activar la configuración en WP Mail SMTP » Configuración » Registro de correo electrónico. Para reenviar un correo electrónico, ve a WP Mail SMTP » Registro de correo electrónico desde tu panel de WordPress.

Verá una lista de todos los correos electrónicos enviados desde su sitio web. Los correos electrónicos que fallaron se marcarán con un punto rojo. Haga clic en el botón "Ver registro" del correo electrónico que no se pudo enviar.

A la derecha, en la pestaña " Acciones" , encontrarás el botón "Reenviar" . Si lo necesitas, edita la dirección de correo electrónico y haz clic en "SÍ" para reenviar el correo.

Y ya está. Ya ha arreglado el wp_mail()
funcionó reconfigurándolo para usar el SMTP mucho más confiable e incluso aprendió cómo reenviar cualquier correo electrónico fallido.
Preguntas frecuentes sobre por qué wp_mail no funciona (y cómo solucionarlo)
En wp_mail()
El problema de las funciones es un tema de interés popular entre nuestros lectores. Aquí encontrará respuestas a algunas preguntas frecuentes al respecto:
¿Por qué wp_mail no envía correos electrónicos en WordPress?
WordPress usa la función de correo PHP, que muchos proveedores de alojamiento web bloquean. Por eso, los correos electrónicos a menudo no se envían.
¿Cómo puedo solucionar que wp_mail() no funcione en WordPress?
Puedes solucionarlo instalando WP Mail SMTP. Este servicio conecta tu sitio web a un servicio de correo electrónico adecuado que gestiona la entrega correctamente.
¿Qué causa que wp_mail falle en WordPress?
La razón más común es que el servidor de alojamiento bloquea el correo PHP. La falta de autenticación del correo electrónico o los conflictos con los plugins también pueden causar problemas.
¿Cómo puedo comprobar si wp_mail funciona correctamente?
Instala WP Mail SMTP y usa su herramienta de prueba de correo electrónico. Esto te mostrará si tu sitio puede enviar correos o si algo falla.
¿Puede WP Mail SMTP solucionar problemas de wp_mail?
Sí. WP Mail SMTP corrige wp_mail utilizando un servicio de correo electrónico de confianza como SendLayer, Brevo, o SMTP.com.
¿Cuál es la mejor manera de solucionar problemas de wp_mail?
Empieza enviando un correo electrónico de prueba con WP Mail SMTP. Después, revisa la configuración de tu servicio de correo y asegúrate de que tus registros DNS sean correctos.
¿Por qué mi formulario de contacto no envía correos electrónicos mediante wp_mail?
Si su complemento de formulario usa wp_mail y no está configurado con un SMTP, el servidor podría bloquear el mensaje o marcarlo como spam.
¿Cómo habilito wp_mail en mi servidor?
No. Está integrado en WordPress, pero muchos proveedores lo bloquean. Usa WP Mail SMTP para conectarte a un servicio de correo adecuado.
A continuación, envíe correos electrónicos con archivos adjuntos
¿Quieres enviar correos electrónicos con archivos adjuntos desde WordPress? Consulta nuestra guía sobre cómo enviar correos electrónicos con archivos adjuntos desde tus formularios de WordPress u otros plugins.
Y si tienes problemas para recibir correos electrónicos de tus formularios de Elementor, aquí te explicamos qué hacer cuando los formularios de contacto de Elementor no envían correos electrónicos.
También es posible que desee mejorar su WordPress SEO. Consulta nuestro artículo sobre los mejores plugins SEO de WordPress para aumentar tu tráfico orgánico y tu posicionamiento.
Arregle sus correos electrónicos de WordPress ahora
¿Listo para arreglar tus correos electrónicos? Empieza hoy mismo con el mejor plugin SMTP para WordPress. Si no tienes tiempo para arreglar tus correos electrónicos, puedes obtener asistencia completa de White Glove Setup como compra adicional, y hay una garantía de devolución de dinero de 14 días para todos los planes de pago.
Si este artículo te ha ayudado, síguenos en Facebook y Twitter para más consejos y tutoriales sobre WordPress.