Debido a la gran cantidad de Spam que existe actualmente, las medidas de seguridad de los grandes como Google, hotmail, etc.. cada vez son más severas.

Esto afecta WordPress, en ocasiones los emails automáticos del gestor de contenidos no pueden ser enviados, en ocasiones los emails de registro de usuarios o de nuestros formularios de contacto tampoco pueden ser enviados.

Para evitar este problema, tenemos varias opciones, ya que normalmente se trata de que nuestro servidor necesita mandar los emails con un smtp autenticado, podemos usar algunos plugins o añadir unas líneas de código en nuestro functions.php:

Editando nuestro functions.php

add_action('phpmailer_init','send_smtp_email');
function send_smtp_email( $phpmailer )
{
    // Define que estamos enviando por SMTP
    $phpmailer->isSMTP();
 
    // La dirección del HOST del servidor de correo SMTP p.e. smtp.midominio.com
    $phpmailer->Host = "smtp.dominio.com";
 
    // Uso autenticación por SMTP (true|false)
    $phpmailer->SMTPAuth = true;
 
    // Puerto SMTP - Suele ser el 25, 465 o 587
    $phpmailer->Port = "25";
 
    // Usuario de la cuenta de correo
    $phpmailer->Username = "soprte@dominio.com";
 
    // Contraseña para la autenticación SMTP
    $phpmailer->Password = "contrasenya";
 
    // El tipo de encriptación que usamos al conectar - ssl (deprecated) o tls
    $phpmailer->SMTPSecure = "tls";
 
    $phpmailer->From = "soprte@dominio.com";
    $phpmailer->FromName = "Soprte";
}

Usando plugins

WP SMTP: Añade cierta facilidad para configurar cuentas de correo de Gmail, Yahoo etc..

WP mail SMTP: Solo tienes que rellenar los datos que te pide, guardar y listo para mandar emails.

Datos a tener en cuenta:

Gmail:

  • Servidor SMTP: smtp.gmail.com
  • Tipo de encriptación: TLS
  • Puerto SMTP: 587

Hotmail:

  • Servidor SMTP: smtp.live.com
  • Tipo de encriptación: TLS
  • Puerto SMTP: 587

Yahoo:

  • Servidor SMTP: smtp.mail.yahoo.com
  • Tipo de encriptación: SSL
  • Puerto SMTP: 465