Resumen de IA
¿Quieres averiguar por qué wp_mail no funciona y solucionarlo?
Los problemas con la función wp_mail() son muy comunes para los usuarios de WordPress. Y cuando no funciona correctamente, tus correos electrónicos de WordPress no se envían (lo cual es un gran problema).
Pero es muy fácil solucionar wp_mail(). En esta publicación, te mostraremos la forma más sencilla de resolver los problemas de wp_mail() para asegurarte de que tus correos electrónicos lleguen siempre a tus destinatarios sin falta.
¡Soluciona tus correos electrónicos de WordPress ahora! :)
¿Qué es wp_mail?
wp_mail() es una función de PHPMailer que genera y envía tus correos electrónicos de WordPress. Por defecto, casi todos los plugins de WordPress utilizan wp_mail() para enviar correos electrónicos. Pero la función wp_mail() no es muy fiable. Por lo tanto, cuando algo sale mal con ella, encontrarás problemas de entrega de correo electrónico en todo tu sitio.
¿Por qué wp_mail no funciona?
Hay algunas razones comunes por las que wp_mail() podría no estar funcionando para ti:
- El correo PHP está deshabilitado por tu servidor web: El Correo PHP es una forma insegura de enviar correos electrónicos y puede ser explotado por hackers y spammers. Es por eso que muchos hosts web deshabilitan el Correo PHP en sus servidores. Dado que
wp_mail()depende de PHP para enviar correos electrónicos, falla cuando PHP está deshabilitado en tu host web. - Tus correos electrónicos están siendo marcados como spam: Un gran problema con la función
wp_mail()es que solo fue diseñada para la simplicidad. Por lo tanto, los correos electrónicos generados por esta función no incluyen ninguna información de autenticación para demostrar que el correo proviene de una fuente legítima. Como resultado, tus correos electrónicos se ven como spam y nunca llegan a la bandeja de entrada de tu destinatario. - Tu sitio se está ejecutando en localhost: Si tu sitio todavía está en desarrollo, no podrás enviar ningún correo electrónico con
wp_mail(). Esto se debe a quewp_mail()no es compatible con localhost. En su lugar, necesitarás un método de entrega de correo 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 que no funciona. Y la solución es usar el plugin WP Mail SMTP.
Cómo solucionar wp_mail de forma sencilla
La forma más sencilla de solucionar todos los problemas con la función wp_mail() es reconfigurarla para usar SMTP en lugar de depender de PHP. La forma más sencilla de lograr esto es usando WP Mail SMTP.

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

Una vez que el archivo zip haya terminado de descargarse, abre el panel de control de WordPress de tu sitio. En la barra de menú de la izquierda, haz clic en Plugins y luego en Añadir nuevo.

Luego, haz clic en Elegir archivo y navega a la ubicación donde descargaste el archivo zip de WP Mail SMTP. Haz doble clic en él y presiona Instalar ahora, seguido de Activar plugin.

Esto debería iniciar el Asistente de configuración automáticamente. Si no se inició, puedes iniciarlo manualmente yendo a WP Mail SMTP » Ajustes y presionando el botón Iniciar el Asistente de configuración.

2. Conecta a un servicio de correo
El Asistente de configuración te permite elegir un servicio de correo de terceros para enviar tus correos electrónicos. Así que en este paso, configuraremos un servicio de entrega de correo adecuado para reemplazar al problemático servidor de alojamiento web predeterminado de WordPress.
Cuando hayas terminado con este paso, WP Mail SMTP reconfigurará la función predeterminada wp_mail() para usar SMTP a partir de ahora para evitar problemas de correo electrónico. Para comenzar, haz clic en el botón Empecemos.

Encontrarás una lista de remitentes recomendados en la siguiente pantalla. Puedes elegir cualquier servicio de correo de esta lista. Si recién estás comenzando, una de las mejores opciones es usar la prueba gratuita de SendLayer.

También puedes obtener más información sobre diferentes proveedores de correo electrónico transaccional para tomar una mejor decisión. Cuando hayas decidido el remitente que deseas usar, haz clic en el enlace a continuación para el remitente que deseas configurar:
| Enviadores disponibles en todas las versiones | Enviadores en WP Mail SMTP Pro |
|---|---|
| SendLayer | Amazon SES |
| SMTP.com | Microsoft 365 / Outlook.com |
| Brevo (anteriormente Sendinblue) | Zoho Mail |
| Google Workspace / Gmail | |
| Mailgun | |
| Postmark | |
| SendGrid | |
| SparkPost | |
| Otro SMTP |
Sigue cuidadosamente las instrucciones del documento y vuelve a este artículo para finalizar la configuración de tu WP Mail SMTP.
¿Quieres configurar varios remitentes? Puedes hacerlo en la configuración de Conexiones Adicionales, luego selecciona una Conexión de Respaldo y configura el Enrutamiento Inteligente.
3. Habilitar registros de correo electrónico detallados (Opcional)
Una vez que hayas configurado y conectado correctamente tu remitente con WP Mail SMTP, el Asistente de configuración te pedirá que elijas las funciones de correo electrónico que deseas habilitar.
Mejora de la entregabilidad de correos electrónicos y Seguimiento de errores de correo electrónico están habilitados por defecto y no se pueden desactivar, pero te recomiendo encarecidamente que también actives los Registros de correo electrónico detallados.

Cuando está habilitada, esta herramienta mantiene un registro de todos los correos electrónicos que tu sitio de WordPress ha generado y enviado. Además, mantiene un registro de una gran cantidad de datos útiles en Informes completos de correo electrónico, como:
- Número de aperturas y clics en tus correos electrónicos de WordPress
- Número de archivos adjuntos
- 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 Resumen semanal de correo electrónico es una forma muy útil de supervisar el rendimiento de tu correo electrónico. Cuando está habilitada, te 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 entregas de correo electrónico confirmadas
- Número de entregas de correo electrónico no confirmadas
- Correos electrónicos fallidos
Con este resumen, puedes hacer un seguimiento de lo bien que está funcionando tu función wp_mail y comprobar si hay algún error a medida que aparecen.

La función de Alertas de correo electrónico instantáneas te notifica cada vez que un correo electrónico no se envía para que puedas solucionar el problema rápidamente. De esta manera, tus usuarios no se perderán mensajes importantes.

Por lo tanto, si deseas asegurarte de que todo funcione correctamente con tus correos electrónicos en todo momento, te recomendamos habilitar estas funciones adicionales para sacar el máximo provecho de WP Mail SMTP.
4. Realizar una prueba de correo electrónico
Una vez que hayas completado todos los pasos anteriores, el Asistente de configuración de WP Mail SMTP enviará un correo electrónico de prueba para verificar si todo se ha configurado correctamente.
Si no hay problemas con la configuración elegida, el asistente de configuración de WP Mail SMTP mostrará un mensaje de éxito.

En esta etapa, deberías esperar a que se generen algunos correos electrónicos para asegurarte de no volver a enfrentarte al error 'no se pudo instanciar la función de correo'.
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 podría verse el mensaje de prueba en tu bandeja de entrada, para que sepas qué esperar. Esto asegura que tus correos electrónicos ahora se enviarán correctamente.

5. Reenviar correos electrónicos fallidos al instante
Puedes reenviar correos electrónicos fallidos fácilmente desde el registro de correos de WP Mail SMTP. Para hacer esto, necesitarás haber activado la opción Almacenar el contenido de todos los correos electrónicos enviados en el Asistente de Configuración.
Si no lo hiciste, puedes activar la configuración yendo a WP Mail SMTP » Ajustes » Registro de Correos. Para reenviar un correo electrónico, ve a WP Mail SMTP » Registro de Correos desde tu panel de WordPress

Verás una lista de todos los correos electrónicos enviados desde tu sitio web. Los correos electrónicos que fallaron estarán marcados con un punto rojo. Haz clic en el botón Ver Registro para el correo electrónico que no se pudo entregar.

Y en el lado derecho, encontrarás el botón Reenviar en la pestaña Acciones. Edita la dirección de correo electrónico si es necesario, luego haz clic en el botón SÍ para reenviar el correo electrónico.

¡Y eso es todo! Ahora has solucionado la función wp_mail() reconfigurándola para usar SMTP, mucho más fiable, e incluso has aprendido a reenviar correos electrónicos fallidos.
Preguntas frecuentes sobre por qué wp_mail no funciona (y cómo solucionarlo)
El hecho de que la función wp_mail() no funcione es un tema de interés popular entre nuestros lectores. Aquí tienes respuestas a algunas consultas comunes al respecto:
¿Por qué wp_mail no envía correos electrónicos en WordPress?
WordPress utiliza la función de correo de PHP, que muchos hosts web bloquean. Por eso los correos electrónicos a menudo fallan al enviarse.
¿Cómo soluciono que wp_mail() no funcione en WordPress?
Puedes solucionarlo instalando WP Mail SMTP. Conecta tu sitio a un servicio de correo electrónico adecuado que gestione la entrega de la manera correcta.
¿Qué causa que wp_mail falle en WordPress?
La razón más común es que el servidor de alojamiento bloquea el correo de PHP. La falta de autenticación de correo o conflictos de plugins también pueden causar problemas.
¿Cómo puedo probar si wp_mail funciona correctamente?
Instala WP Mail SMTP y utiliza su herramienta de prueba de correo electrónico. Muestra si tu sitio puede enviar correos electrónicos o si algo está roto.
¿Puede WP Mail SMTP solucionar problemas de wp_mail?
Sí. WP Mail SMTP soluciona 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. Luego, revisa la configuración de tu remitente y asegúrate de que tus registros DNS sean correctos.
¿Por qué mi formulario de contacto no envía correos electrónicos usando wp_mail?
Si tu plugin de formularios utiliza wp_mail y no está configurado con SMTP, el servidor podría bloquear el mensaje o marcarlo como spam.
¿Cómo habilito wp_mail en mi servidor?
No lo haces. Está integrado en WordPress, pero muchos hosts lo bloquean. Usa WP Mail SMTP para conectarte a un remitente de correo adecuado en su lugar.
Siguiente, Enviar correos electrónicos con archivos adjuntos
¿Le gustaría enviar correos electrónicos con archivos adjuntos desde WordPress? Consulte nuestra guía sobre cómo enviar correos electrónicos de WordPress con archivos adjuntos desde sus formularios de WordPress u otros complementos.
Y si tiene problemas para recibir correos electrónicos de sus formularios de Elementor, esto es lo que debe hacer cuando los formularios de contacto de Elementor no envían correos electrónicos.
También puede querer mejorar su SEO en WordPress. Consulte nuestro artículo sobre los mejores plugins de SEO para WordPress para aumentar su tráfico orgánico y sus clasificaciones.
Soluciona tus correos de WordPress ahora
¿Listo para arreglar tus correos electrónicos? Empieza hoy mismo con el mejor plugin SMTP de WordPress. Si no tienes tiempo para arreglar tus correos electrónicos, puedes obtener asistencia completa de configuración White Glove 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 sido útil, síguenos en Facebook y Twitter para obtener más consejos y tutoriales de WordPress.
