Cómo configurar WordPress para enviar correos (SMTP)
¿Te ha pasado que tu WordPress no envía correos? Es una de las consultas más comunes en soporte técnico. Los formularios de contacto se quedan mudos, las notificaciones de pedidos no llegan y los avisos de recuperación de contraseña se pierden en el vacío.
El problema casi siempre es el mismo: WordPress utiliza por defecto la función mail() de PHP, que depende de que tu servidor tenga configurado un servicio de correo saliente (sendmail o Postfix). En entornos de hosting compartido o VPS optimizados, esta función suele estar bloqueada o mal configurada, lo que deriva en correos que van directo a la carpeta de spam o que simplemente se borran.
La solución profesional y definitiva es configurar WordPress para enviar correos mediante SMTP (Protocolo Simple de Transferencia de Correo). Esto te permite usar un servidor de correo externo (como Gmail, Outlook, o el de tu propia marca) para garantizar la entrega.
En este artículo te voy a guiar paso a paso para que configures el envío de correos en WordPress sin necesidad de ser un experto en servidores.
¿Por qué es tan importante configurar SMTP en WordPress?
Imagina que tu tienda online depende de un formulario de contacto. Si un cliente potencial te escribe y tú nunca recibes el mensaje, pierdes una venta. Pero el problema es más profundo.
Cuando usas la función mail() de PHP, los servidores receptores (como Gmail o Outlook) no pueden verificar la autenticidad del remitente. Esto hace que tus correos tengan una altísima probabilidad de ser marcados como spam o rechazados directamente.
Al configurar un servicio SMTP, estás haciendo lo siguiente:
- Autenticas tu dominio y servidor ante los proveedores de correo.
- Evitas que tus correos caigan en spam, ya que usas credenciales válidas.
- Aumentas la tasa de entrega de tus notificaciones, facturas y mensajes de contacto.
- Obtienes un registro de envío, ya que muchos plugins SMTP te permiten revisar si el correo se envió correctamente o si falló.
En resumen, configurar SMTP en WordPress no es una opción, es una necesidad para cualquier sitio web que quiera comunicarse de manera fiable con sus usuarios.
Antes de empezar: ¿Qué necesitas?
Para configurar SMTP en WordPress necesitas tener a mano los siguientes datos. Es importante que los tengas listos para no quedarte a medias:
- Dirección de correo electrónico completa que usarás para enviar los mensajes (ej:
notificaciones@tudominio.com). - Contraseña de ese correo.
- Servidor SMTP saliente (ej:
smtp.gmail.com,smtp.tudominio.com). - Puerto SMTP (normalmente
465para SSL o587para TLS). - Método de cifrado (SSL o TLS).
Si tu hosting lo gestionas con Syspanel, recuerda que este panel de control (accesible en el puerto 2106) te permite crear cuentas de correo profesionales para tu dominio. Eso es lo más recomendable, porque usarás un correo con tu propia marca (ej: hola@tudominio.com), lo que genera más confianza que usar un Gmail personal.
[INFO] Si tu correo es de un proveedor gratuito (Gmail, Outlook), necesitarás generar una "contraseña de aplicación" o activar el acceso a apps menos seguras, según el proveedor. Te lo explico más adelante.
Método 1: Configurar SMTP con el plugin WP Mail SMTP (Recomendado)
Esta es la forma más sencilla y popular. El plugin WP Mail SMTP no solo configura el envío, sino que además te permite comprobar si el correo se envía correctamente desde el panel de administración.
Paso 1: Instalar el plugin
Ve a tu panel de administración de WordPress (normalmente en /wp-admin).
Dirígete a Plugins → Añadir nuevo.
En el buscador, escribe "WP Mail SMTP".
Busca el plugin desarrollado por "WPForms" y haz clic en Instalar ahora y luego en Activar.
Paso 2: Configurar el plugin con una cuenta de correo profesional
Una vez activado, verás un aviso en la parte superior pidiendo que configures el plugin. Haz clic en Empezar a configurar o ve a Ajustes → WP Mail SMTP.
Se abrirá el asistente de configuración. Te guiaré por las opciones más comunes:
- Remitente (From Email): Aquí escribe la dirección de correo que usarás para enviar (ej:
hola@tudominio.com). - Nombre del remitente (From Name): El nombre que verá el destinatario (ej: "Soporte de MiWeb").
- Servidor de correo: Selecciona "Otra configuración de SMTP" en el desplegable si tu proveedor no aparece en la lista (como Gmail o Outlook).
Paso 3: Rellenar los datos del servidor SMTP
Ahora viene la parte técnica, pero es fácil si sigues estos campos:
- Servidor SMTP: Introduce el servidor de tu proveedor. Por ejemplo, si usas un correo de tu dominio, suele ser
mail.tudominio.com. Si usas Gmail, seríasmtp.gmail.com. - Cifrado (Encryption): Selecciona SSL si vas a usar el puerto 465, o TLS si vas a usar el puerto 587. Te recomiendo TLS siempre que sea posible.
- Puerto SMTP: Escribe
465para SSL o587para TLS. - Autenticación: Activa la casilla "Activar autenticación SMTP".
- Nombre de usuario: Tu correo electrónico completo (ej:
hola@tudominio.com). - Contraseña: La contraseña de ese correo.
Haz clic en Guardar configuración.
Paso 4: Probar el envío de correos
La mejor función de este plugin es la de pruebas. Ve a la pestaña Herramientas de correo electrónico dentro del plugin.
En el campo Enviar un correo de prueba a, escribe tu correo personal y haz clic en Enviar.
WordPress te mostrará un mensaje de éxito o un error detallado. Si el envío es exitoso, ¡ya está todo listo! Si recibes un error, revisa los datos que has introducido, especialmente el puerto y el cifrado.
[TIP] Si usas un correo de tu propio dominio creado en Syspanel, el servidor SMTP suele ser mail.tudominio.com. Pero si tu dominio está apuntando a un servicio externo como Cloudflare, es posible que necesites usar el servidor de tu proveedor de hosting. Consulta la documentación de tu hosting si tienes dudas.
Método 2: Configurar SMTP manualmente en el archivo wp-config.php
Para los que prefieren tocar código o no quieren instalar otro plugin, existe la opción de añadir una función personalizada en el archivo functions.php de tu tema hijo. Esto es más avanzado, pero te lo explico de forma sencilla.
Añade este código al final del archivo functions.php de tu tema hijo (nunca en el tema principal, porque perderías los cambios al actualizar):
add_action( 'phpmailer_init', 'configure_smtp_phpmailer' );
function configure_smtp_phpmailer( $phpmailer ) {
$phpmailer->isSMTP();
$phpmailer->Host = 'mail.tudominio.com'; // Cambia a tu servidor SMTP
$phpmailer->SMTPAuth = true;
$phpmailer->Port = 587; // o 465
$phpmailer->Username = 'hola@tudominio.com';
$phpmailer->Password = 'TU_CONTRASEÑA';
$phpmailer->SMTPSecure = 'tls'; // o 'ssl'
$phpmailer->From = 'hola@tudominio.com';
$phpmailer->FromName = 'Nombre de tu web';
}
[WARNING] Este método es útil si solo quieres una solución rápida sin plugins, pero tiene una desventaja: no tienes un registro de errores visual. Si algo falla, es más difícil depurar. Además, si cambias de tema, perderás la configuración. Por eso, recomiendo el uso de un plugin para la mayoría de los casos.
¿Cómo evitar que mis correos caigan en spam?
Configurar SMTP es el primer paso, pero no es el único. Los filtros antispam son muy estrictos. Aquí tienes una lista de comprobación para asegurarte de que tus correos lleguen a la bandeja de entrada:
1. Usa un remitente con tu propio dominio
Olvídate de enviar desde tucorreo@gmail.com. Usa una dirección como no-reply@tudominio.com o hola@tudominio.com. Esto genera confianza.
2. Configura los registros SPF y DKIM
Estos son registros DNS que demuestran que tu servidor está autorizado para enviar correos en nombre de tu dominio. Sin ellos, es muy probable que acabes en spam.
- SPF (Sender Policy Framework): Indica qué servidores pueden enviar correo por tu dominio.
- DKIM (DomainKeys Identified Mail): Añade una firma digital a tus correos.
Si usas Syspanel, puedes gestionar estos registros fácilmente desde la sección de DNS del dominio. Si tu dominio está en otro proveedor, deberás añadirlos manualmente.
La forma más fácil de obtener estos registros es desde tu proveedor de SMTP (si usas uno externo como Mailgun o SendGrid) o desde tu hosting.
3. Configura un registro DMARC
Es la siguiente capa de protección. Le dice a los servidores receptores qué hacer si fallan las comprobaciones SPF o DKIM. Te recomiendo empezar con una política de none para monitorear, y luego endurecerla.
4. Evita las palabras spam en tus correos
Frases como "Gana dinero rápido", "Haz clic aquí" o el uso excesivo de mayúsculas y signos de exclamación activan los filtros. Mantén un tono natural.
5. Limpia tu lista de correos
Si envías newsletters, elimina las direcciones inactivas. Los envíos a direcciones inexistentes dañan tu reputación como remitente.
Solución de problemas comunes con SMTP en WordPress
Incluso siguiendo todos los pasos, pueden surgir problemas. Aquí tienes una lista de los errores más frecuentes y cómo solucionarlos:
Error: "SMTP connect() failed"
Este es el error más común. Significa que WordPress no puede conectarse al servidor de correo. Las causas suelen ser:
- Puerto incorrecto: Asegúrate de que el puerto coincide con el cifrado. Si usas SSL, es el 465; si usas TLS, el 587.
- Servidor bloqueado por el hosting: Algunos hostings bloquean las conexiones salientes al puerto 25 o 465. Prueba a cambiar al puerto 587 o a usar el servidor SMTP de tu propio hosting.
- Firewall: Si tienes un firewall en tu VPS, permite las conexiones salientes a esos puertos.
Error: "Mailer Error: SMTP Error: Could not authenticate"
Esto indica que tus credenciales son incorrectas.
- Revisa que el nombre de usuario sea el correo completo.
- Asegúrate de que la contraseña no tenga espacios y sea la correcta.
- Si usas Gmail, necesitas generar una contraseña de aplicación en tu cuenta de Google (Configuración de seguridad → Contraseñas de aplicaciones). La contraseña normal de tu cuenta no funcionará.
Los correos se envían pero llegan a spam
Esto es un problema de reputación de dominio.
- Verifica que los registros SPF y DKIM estén correctamente configurados en tu DNS.
- Calienta tu dirección de correo: envía correos a direcciones que sí lees y márcalos como "No es spam" para entrenar al filtro.
- Asegúrate de que tu IP no esté en listas negras. Puedes consultar sitios como
mxtoolbox.com.
Preguntas Frecuentes (FAQ)
¿Qué es mejor: usar un plugin SMTP o configurar el código manualmente?
Para el 99% de los usuarios, un plugin es la mejor opción. Es más fácil de mantener, tiene interfaz gráfica para pruebas y no se pierde al actualizar el tema. El código manual es solo para desarrolladores que quieren un control absoluto o para sitios muy específicos.
¿Puedo usar mi correo de Gmail para el envío masivo de boletines?
Técnicamente sí, pero es una mala práctica. Gmail tiene límites estrictos de envío (500 correos por día en cuentas gratuitas) y puede suspender tu cuenta si envías demasiados correos. Es mejor usar un servicio de Email Marketing (como Mailchimp) o un SMTP transaccional (como SendGrid).
¿Qué es el puerto 465 y el 587? ¿Cuál debo usar?
- Puerto 465: Es el puerto para SMTP con cifrado SSL implícito. La conexión se cifra desde el principio.
- Puerto 587: Es el puerto para SMTP con cifrado STARTTLS. La conexión comienza sin cifrar y luego se actualiza a cifrada.
El 587 es el estándar moderno y el más recomendado por los proveedores. Si tu servidor no lo soporta, usa el 465.
¿Necesito configurar SMTP si mi hosting usa cPanel o Syspanel?
Sí. Aunque tu hosting tenga un servidor de correo, WordPress no lo usará automáticamente. La función mail() de PHP puede estar deshabilitada. Configurar SMTP es la única forma de garantizar que tus correos salgan correctamente.
[INFO] Recuerda que Syspanel es el panel de control que te permite gestionar todo tu hosting, incluyendo la creación de cuentas de correo y la gestión de DNS. El acceso se realiza a través del puerto 2106.
¿Cómo sé si mi correo se envió correctamente?
Con el plugin WP Mail SMTP, la pestaña "Herramientas de correo electrónico" te permite enviar una prueba y ver el resultado. Además, el plugin guarda un registro de todos los correos enviados desde tu sitio, lo que es muy útil para depurar errores.
Conclusión: Tu WordPress listo para comunicarse
Configurar SMTP en WordPress es una tarea que no deberías posponer. Te asegura que los formularios de tu web funcionen, que tus clientes reciban sus facturas y que las contraseñas de tus usuarios se restablezcan sin problemas.
La inversión de tiempo es mínima si sigues los pasos con el plugin WP Mail SMTP. Además, al usar un correo con tu propio dominio, mejoras la imagen de tu marca y la confianza de tus usuarios.
Si te has encontrado con problemas de envío, ahora ya sabes cómo solucionarlos. Recuerda revisar siempre los registros SPF y DKIM, y mantener una buena higiene de tus listas de correo.
Con estos ajustes, tus correos llegarán a su destino, y tú podrás dedicarte a lo que realmente importa: hacer crecer tu proyecto.
[TIP] Si tu web es de comercio electrónico, te recomiendo encarecidamente usar un servicio SMTP transaccional como SendGrid o Mailgun si esperas un alto volumen de correos (notificaciones de pedido, recuperación de contraseña). Son más fiables y escalables que el correo de tu hosting.
