Por qué WordPress no envía correos (y cómo arreglarlo)

Hay pocas sensaciones peores en un negocio que descubrir que su sitio WordPress no envía correos — que el formulario de contacto que sus clientes llevan semanas llenando no ha estado llegando a ninguna parte. Los restablecimientos de contraseña no llegan, las confirmaciones de pedidos desaparecen, los envíos de formularios nunca llegan a su bandeja de entrada. Lo frustrante es que nada parece roto: el formulario dice “gracias”, el sitio carga bien y no hay ningún error a la vista. Esta guía explica por qué pasa y cómo arreglarlo para siempre.

La causa de fondo casi siempre es la misma, y no es su plugin de formularios de contacto. Es la forma anticuada en que WordPress intenta enviar correo en primer lugar.

Por qué el correo de WordPress falla tan a menudo

Por defecto, WordPress envía correo con la función mail() que trae PHP, el lenguaje de programación con el que funciona WordPress — un método sencillo y con décadas de antigüedad que le pasa el mensaje a cualquier servicio de correo que tenga el servidor. En un hosting compartido barato, ese servicio muchas veces está mal configurado, limitado en la cantidad de correos que puede enviar por período o directamente no existe. Incluso cuando el servidor sí envía el mensaje, los proveedores de correo modernos desconfían cada vez más del correo enviado así.

Este es el meollo: hoy su correo tiene que demostrar que de verdad viene de su dominio. Los proveedores revisan unos registros llamados SPF, DKIM y DMARC antes de confiar en un mensaje. El correo enviado con PHP a secas desde un servidor compartido cualquiera normalmente no pasa esas revisiones, así que se descarta sin avisar o va a parar al spam. Nadie se lo devuelve. Simplemente desaparece — y por eso nunca lo notó.

Paso 1: confirme que de verdad está roto

Antes de cambiar nada, compruebe el problema. Instale un plugin de prueba (hay varios gratis) que envíe un correo de prueba e informe si el servidor lo aceptó. O simplemente pida un restablecimiento de contraseña para una cuenta de prueba y vea si llega. Revise también las carpetas de spam — el correo que llega al spam es un problema de entrega, mientras que el que no llega nunca suele ser un problema de envío. Los dos se arreglan de la misma forma.

Paso 2: cámbiese a SMTP — el arreglo de verdad

La respuesta confiable es dejar de usar mail() de PHP y enviar en cambio a través de un servicio de correo autenticado como debe ser, con un protocolo llamado SMTP. En palabras sencillas: en lugar de que el servidor murmure su mensaje al vacío, su sitio inicia sesión en un proveedor de correo real y le pide que envíe el mensaje como corresponde, firmado y autenticado para que las bandejas de entrada confíen en él.

Lo configura con un plugin de SMTP gratis. Le pide los datos de conexión de un servicio de correo — un proveedor dedicado al correo transaccional, o su cuenta de correo del negocio que ya tiene. Una vez conectado, WordPress manda cada mensaje que envía (avisos de formularios, restablecimientos, recibos) a través de ese servicio confiable. La entrega normalmente pasa de “a veces sí, a veces no” a “simplemente funciona”.

Unas notas prácticas al configurarlo:

  • Use una dirección de remitente de su propio dominio (como hello@yourbusiness.com), no una dirección gratis de Gmail o Yahoo — enviar como un proveedor gratis desde su sitio choca con sus reglas contra la suplantación.
  • Nunca pegue claves de API ni contraseñas de correo en un chat, un correo o un foro de soporte. Trátelas como las contraseñas que son.
  • Si el proveedor lo ofrece, prefiera una contraseña de aplicación o una clave de API antes que su contraseña de correo principal.

Paso 3: ponga en orden los registros de correo de su dominio

Para la mejor entrega, el DNS de su dominio (los ajustes que dirigen su dominio a su servidor) necesita registros SPF y DKIM que autoricen a su servicio de correo a enviar en nombre de usted. La mayoría de los proveedores transaccionales le dan los registros exactos que agregar y un botón para verificarlos. Agregarlos es lo que le lleva de “cae en el spam” a “llega a la bandeja de entrada”. Un registro DMARC encima les dice a los servidores que reciben qué hacer con lo que no pase las revisiones — y le avisa sin ruido si alguien intenta suplantar su dominio.

Paso 4: vuelva a revisar lo básico del plugin

Con SMTP funcionando, descarte las cosas pequeñas:

  • En su plugin de formularios, confirme que la dirección de correo de los avisos es correcta y no tiene una errata.
  • Asegúrese de que los avisos estén de verdad activados en el formulario — algunos constructores le dejan apagarlos sin querer.
  • Compruebe que el aviso no se envíe “desde” la dirección del visitante, algo que muchos proveedores rechazan. Envíe desde su dominio y ponga la del visitante como dirección de respuesta.

Por qué esto es en realidad una cuestión de hosting

Un correo que falla sin avisar es una de las señales más claras de un hosting que se configuró para ser barato y no para funcionar. Una plataforma a la que le importa el correo de su sitio configura bien el camino de envío, para que un formulario de contacto haga lo que sus clientes dan por hecho que hace — llegar a una persona. Cuando esté decidiendo qué debe incluir el hosting de WordPress administrado, la entrega confiable del correo va en la lista, aunque sea el tipo de cosa en la que nadie piensa hasta que se rompe.

Eso es parte de lo que resolvemos en el hosting de WordPress administrado. Hacemos que el correo de su sitio salga por un camino confiable y autenticado, le ayudamos a poner en orden los registros SPF y DKIM que necesita su dominio y confirmamos que los mensajes de prueba de verdad llegan — para que un cliente potencial que llena su formulario termine en su bandeja de entrada, no en el vacío. Y si algo se queda callado, hay soporte a cualquier hora, por correo o desde su panel, con una primera respuesta en un máximo de 15 minutos. Es el mismo precio fijo tenga un sitio o diez; la configuración y este tipo de cuidado continuo vienen incluidos, no son una línea sorpresa en la factura.

Un resumen rápido

  1. Compruebe el problema con un correo de prueba; revise también el spam.
  2. Instale un plugin de SMTP y conecte un servicio de correo real y autenticado.
  3. Agregue los registros SPF y DKIM para que las bandejas de entrada confíen en su dominio.
  4. Verifique la dirección de remitente y los ajustes de avisos del formulario.
  5. Envíe una última prueba y confirme que llega a la bandeja de entrada.

Si lidiar con registros de DNS y proveedores de correo no es como quiere pasar la tarde — o ya lo arregló una vez y se volvió a romper — déjenoslo a nosotros. Conseguir que el correo de WordPress llegue de forma confiable es trabajo de rutina para nuestro equipo de soporte con base en EE. UU. Y si su sitio muestra otros síntomas raros además del correo que falta, nuestra lista de revisión de emergencia es una buena siguiente parada.