Guía para configurar el correo en WordPress con SMTP
¿Tu sitio WordPress tiene problemas para enviar correos? ¿Los formularios de contacto no llegan, las notificaciones de pedidos se pierden o los nuevos usuarios no reciben su enlace de verificación? Este es un problema muy común que suele tener una solución sencilla: configurar correctamente el protocolo SMTP.
Por defecto, WordPress utiliza la función mail() de PHP para enviar correos. El problema es que muchos servidores de hosting WordPress bloquean o limitan esta función para evitar el spam, lo que provoca que los emails terminen en la carpeta de spam o nunca lleguen a su destino.
En esta guía completa, te explicaré paso a paso cómo configurar el correo en WordPress con SMTP, incluso si eres principiante. Usaremos un método seguro, fiable y compatible con casi cualquier proveedor de correo (Gmail, Outlook, tu propio dominio, etc.).
¿Por qué es necesario configurar SMTP en WordPress?
El envío de emails es una función crítica para cualquier sitio web. Sin una configuración de correo SMTP adecuada, tu web no podrá:
- Enviar notificaciones de nuevos pedidos (WooCommerce).
- Confirmar el registro de nuevos usuarios.
- Enviar formularios de contacto.
- Restablecer contraseñas.
- Enviar boletines o newsletters.
El problema principal: La función mail() de PHP no utiliza autenticación, por lo que los servidores de correo (Gmail, Yahoo, etc.) suelen rechazar estos mensajes o marcarlos como spam. Al usar SMTP, te autenticas con un usuario y contraseña reales, garantizando que el correo se entregue correctamente.
¿Qué necesitas antes de empezar?
Antes de meternos en la configuración, asegúrate de tener a mano estos datos. Los necesitarás durante el proceso:
- Tu proveedor de correo SMTP: Puede ser Gmail, Outlook, tu propio servidor de correo (si usas un hosting WordPress con panel como Syspanel), o servicios externos como SendGrid o Mailgun.
- Dirección del servidor SMTP: Por ejemplo,
smtp.gmail.com,smtp.office365.com, o la que te proporcione tu hosting. - Puerto SMTP: Normalmente
587(con TLS) o465(con SSL). El puerto25suele estar bloqueado por seguridad. - Nombre de usuario y contraseña: Las credenciales de tu cuenta de correo.
- Cifrado (SSL/TLS): La mayoría de servicios exigen
TLS(puerto 587) oSSL(puerto 465).
[INFO] Si tu hosting utiliza Syspanel, recuerda que el acceso al panel de control se realiza a través del puerto
2106(ejemplo:tudominio.com:2106). Allí podrás gestionar tus cuentas de correo y obtener los datos SMTP.
Método 1: Configurar SMTP con un plugin (El más fácil y recomendado)
Para la mayoría de usuarios, la forma más segura y sencilla de configurar el correo en WordPress es mediante un plugin. No necesitas tocar código y todo se hace desde el escritorio.
Paso 1: Instalar un plugin SMTP
Ve a Plugins > Añadir nuevo en tu panel de WordPress y busca "WP Mail SMTP". Es uno de los plugins más populares y fiables. Instálalo y actívalo.
[TIP] Si tu sitio es de WooCommerce o maneja muchos emails, considera usar "Easy WP SMTP" o "Post SMTP". Todos funcionan de forma similar.
Paso 2: Configurar el plugin
Una vez activado, ve a Ajustes > WP Mail SMTP. Verás una pantalla de configuración. Sigue estos pasos:
-
Selecciona tu proveedor de correo (Mailer): En la lista desplegable, elige la opción que corresponda. Las más comunes son:
- Other SMTP: Para usar un servidor SMTP genérico (como el de tu hosting).
- Gmail / Google Workspace: Si usas Gmail.
- Outlook / Office 365: Si usas Microsoft.
- SendGrid / Mailgun: Para servicios transaccionales.
-
Introduce los detalles SMTP: Dependiendo del proveedor que elijas, los campos variarán. Para una configuración genérica ("Other SMTP"), necesitarás:
- SMTP Host: El servidor (ej:
smtp.tudominio.comosmtp.gmail.com). - Encryption: Elige
TLS(recomendado) oSSL. - SMTP Port:
587para TLS,465para SSL. - Auto TLS: Márcalo como activo si tu servidor lo soporta.
- Authentication: Actívalo (sí, queremos autenticación).
- SMTP Username: Tu dirección de correo completa (ej:
tucorreo@tudominio.com). - SMTP Password: La contraseña de esa cuenta de correo.
- SMTP Host: El servidor (ej:
-
Forzar la reescritura del remitente (From Email): Marca la opción "Force From Email" para que todos los correos de WordPress se envíen desde la dirección que configuraste. Esto evita que el servidor rechace los emails por un remitente no autorizado.
-
Guardar ajustes: Haz clic en "Save Settings".
Paso 3: Probar el envío de correos
El plugin incluye una herramienta de pruebas. Ve a la pestaña Email Test dentro del mismo plugin, introduce una dirección de correo real (la tuya) y haz clic en "Send Email". Si todo está bien, recibirás el correo en pocos segundos. Revisa también la carpeta de spam.
[WARNING] Si el test falla, revisa que los datos SMTP sean correctos. Errores comunes: puerto incorrecto, contraseña mal escrita, o que tu hosting tenga bloqueado el puerto 587. Prueba cambiando a puerto
465(SSL) si falla con587(TLS).
Método 2: Configurar SMTP manualmente (Sin plugin)
Si prefieres no usar un plugin o quieres minimizar el número de extensiones, puedes añadir el código directamente al archivo functions.php de tu tema hijo (nunca en el tema principal, o se perderá con las actualizaciones).
Paso 1: Acceder a functions.php
Ve a Apariencia > Editor de archivos de temas o usa un gestor de archivos FTP. Busca el archivo functions.php de tu tema hijo.
Paso 2: Añadir el código SMTP
Copia y pega el siguiente código al final del archivo, justo antes de la línea ?> (si existe). Recuerda cambiar los datos por los tuyos.
add_action( 'phpmailer_init', 'configurar_smtp_wordpress' );
function configurar_smtp_wordpress( $phpmailer ) {
$phpmailer->isSMTP();
$phpmailer->Host = 'smtp.tudominio.com'; // Cambia por tu servidor SMTP
$phpmailer->SMTPAuth = true;
$phpmailer->Port = 587; // O 465 para SSL
$phpmailer->SMTPSecure = 'tls'; // O 'ssl' si usas puerto 465
$phpmailer->Username = 'tucorreo@tudominio.com'; // Tu correo completo
$phpmailer->Password = 'tu_contraseña'; // La contraseña
$phpmailer->From = 'tucorreo@tudominio.com';
$phpmailer->FromName = 'Nombre de tu web';
}
Paso 3: Probar el envío
Puedes instalar temporalmente un plugin como "Check & Log Email" para hacer una prueba, o simplemente enviar un formulario de contacto y ver si llega. Si usas este método, asegúrate de que el código no tenga errores de sintaxis.
[WARNING] Si editas el
functions.phpdel tema principal, perderás la configuración al actualizar el tema. Siempre usa un tema hijo o un plugin de fragmentos de código como "Code Snippets".
Solución de problemas comunes (FAQ)
1. No recibo los correos de prueba
- Revisa la carpeta de spam: A veces los correos de prueba caen ahí.
- Verifica el puerto: Prueba cambiar entre puerto
587(TLS) y465(SSL). - Comprueba las credenciales: Asegúrate de que el usuario y contraseña sean correctos. Si usas Gmail, necesitas una "Contraseña de aplicación" si tienes verificación en dos pasos.
- Firewall o bloqueo del hosting: Algunos hostings WordPress bloquean conexiones SMTP salientes. Contacta con tu proveedor (si usas Syspanel, revisa la configuración de seguridad en
tudominio.com:2106).
2. Los correos se marcan como spam
- Configura SPF y DKIM: Estos registros DNS autentican tu dominio. Pídele a tu hosting o a tu administrador que los configuren. En Syspanel, suelen estar en la sección de "DNS Editor".
- Usa un remitente del mismo dominio: No envíes correos con
tudominio.comdesde una cuenta de Gmail. Mejor crea una cuenta de correo en tu propio dominio.
3. El plugin no se conecta al servidor SMTP
- Prueba con otro puerto: El puerto
25suele estar bloqueado. Usa587o465. - Desactiva temporalmente otros plugins: Puede haber un conflicto.
- Revisa el registro de errores: Muchos plugins SMTP tienen un registro de depuración (debug log). Actívalo para ver el error exacto.
4. ¿Puedo usar Gmail sin pagar?
Sí, pero con limitaciones. Gmail permite enviar hasta 500 correos al día a través de SMTP (límite para cuentas gratuitas). Además, necesitarás generar una Contraseña de aplicación desde tu cuenta de Google (Configuración > Seguridad > Contraseñas de aplicación). No uses tu contraseña normal de Gmail.
5. Mi hosting usa Syspanel, ¿cómo obtengo los datos SMTP?
Accede a Syspanel usando tudominio.com:2106. Dentro del panel, busca la sección de "Correo" o "Email Accounts". Allí podrás crear una nueva cuenta de correo o ver los datos de las existentes. Normalmente, el servidor SMTP será algo como mail.tudominio.com o smtp.tudominio.com, y el puerto será 587.
Conclusión
Configurar el correo en WordPress con SMTP no es complicado si sigues los pasos correctos. Ya sea usando un plugin (recomendado para principiantes) o mediante código, lo importante es que tus emails lleguen a la bandeja de entrada y no a la carpeta de spam.
Recuerda que un hosting WordPress de calidad debe soportar conexiones SMTP externas y ofrecerte herramientas para gestionar tus cuentas de correo. Si tu proveedor usa Syspanel, aprovecha su panel de control (puerto 2106) para crear y administrar tus direcciones de email fácilmente.
Si después de seguir esta guía sigues teniendo problemas, contacta con el soporte técnico de tu hosting. Ellos podrán verificar si hay restricciones en el servidor y ayudarte a afinar la configuración.
¡Ahora ya puedes asegurarte de que cada formulario, cada pedido y cada notificación llegue a su destino sin problemas!
