Es posible que alguna vez, al configurar el formulario de contacto o el conocidísimo Contact Form, este no termine de funcionar al rellenarlo.
Cuando existe un fallo en el envío, uno de los mensajes de alerta más frecuentes que suelen aparecer en el mismo formulario es «Por favor, inténtelo más tarde o contacte con el administrador por otro medio.». Ahora se trata de identificar uno de los motivos por los que aparece este problema.
Muchos hostings compartidos tienen bloqueado el envío de emails de cuentas sin verificar.
Enviar emails con cuentas no verificadas con WP-MAIL-SMTP
Con el plugin WP MAIL SMTP conseguiremos configurar una cuenta con sus credenciales para conectarnos de forma sencilla. Bastará con configurar el panel del WP-MAIL-SMTP de la siguiente forma:
(1) Especificamos la dirección de correo de quien envía. Si lo dejamos en blanco, usará el email por defecto.
(2) Especificamos el nombre de quien manda el correo. Si se deja en blanco, usará por defecto WordPress.
(3) Escribimos la dirección del Host del servidor de correo SMTP.
(4) En este campo añadimos el puerto SMTP, normalmente suele ser el 465, 587 o el 25.
(5) Especificamos el tipo de encriptación.
(6) Si usamos la autentificación SMTP, este campo lo rellenaremos con el Usuario.
(7) Finalmente escribimos la contraseña.
Además, al final del panel de configuración, podemos hacer un Test mandando un email de pruevas a la dirección que escojamos. Si el resultado de este test es «true», nuestro mensaje se mandará correctamente, por lo contrario, si la respuesta es un «false», el mismo plugin WP-MAIL-SMTP nos generará un debug que puede ser vital para localizar el problema.
Configurar el envío de emails con cuentas no verificadas SIN PLUGINS
Esta solución está pensada para aquellos que no les gusta llenar WordPress de plugins, una forma más libiana para solucionar el problema y ahorrarnos algo de espacio. Para configurar este sistema accederemos en las opciones del WordPress a «Apariencia / Editor» y buscaremos el fichero Funciones del tema (functions.php).
Dentro del fichero, encontraremos una función llamada send_smtp_email donde se definen los parametros a configurar.
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.ejemplo.com«;
// Uso autenticación por SMTP (true|false)
$phpmailer->SMTPAuth = true;
// Puerto SMTP – Suele ser el 25, 465 o 587
$phpmailer->Port = «465«;
// Usuario de la cuenta de correo
$phpmailer->Username = «ejemplo@ejemplo.com/span>»;
// Contraseña para la autenticación SMTP
$phpmailer->Password = «ejemplo«;
// El tipo de encriptación que usamos al conectar – ssl (deprecated) o tls
$phpmailer->SMTPSecure = «ssl«;
$phpmailer->From = «ejemplo@ejemplo.com»;$phpmailer->FromName = «ejemplo«;
}
Simplemente reemplazando o insertando las variables marcadas conseguiremos que los emails se envíen correctamente desde nuestro servidor.