Enviar notificaciones de correo condicionales

La pestaña Notifications contiene rutas separadas para los destinatarios del sitio y para quienes envían el formulario. Una ruta sin condiciones se aplica a cada envío; una ruta condicional se aplica únicamente cuando se cumplen sus reglas.

Crear una ruta de administrador

  1. Abre el formulario y elige Notifications.
  2. Expande Admin Conditional Routes.
  3. Elige Add notification o edita la ruta predeterminada.
  4. Introduce un Route Name interno.
  5. Deja la lógica condicional vacía para una ruta siempre activa, o configura Send If o Do Not Send If.
  6. Configura To Email. Un valor vacío recurre como alternativa a los destinatarios predeterminados configurados y, después, a la dirección del administrador del sitio.
  7. Añade CC Email o BCC Email solo cuando sea necesario.
  8. Configura un From Name y un From Email autorizados.
  9. Configura Reply To con una etiqueta de combinación de correo enviado cuando los destinatarios deban responder al visitante.
  10. Escribe Subject y Message, usando Insert merge tag.
  11. Decide si incluir Include Form Data o los datos del usuario aprobado.
  12. Guarda y prueba.

Usa una dirección de remitente autorizada para el dominio de correo del sitio. No coloques una dirección proporcionada por el visitante en From Email.

Enviar una confirmación al cliente

En Client Conditional Routes:

  1. Elige First Valid Route Only cuando solo deba enviarse el primer mensaje que coincida, o All Valid Routes cuando cada coincidencia sea intencionada.
  2. Añade una ruta.
  3. Selecciona un campo de correo electrónico en Recipient Field.
  4. Activa opcionalmente Send to logged-in user; los invitados usan entonces el campo de correo electrónico seleccionado.
  5. Escribe una confirmación que explique la recepción y los siguientes pasos sin repetir datos personales innecesarios.

Enrutar según una respuesta

Para un formulario con enquiry_type, crea rutas de administrador distintas de Ventas y Soporte. Asigna a cada ruta una condición Send If mutuamente excluyente y, después, prueba ambas opciones con buzones de destinatarios reales.

El orden de las rutas importa en las notificaciones al cliente que usan First Valid Route Only.

Idioma de la notificación

Las notificaciones guardadas del formulario admiten Polylang y POM Translate mediante cadenas registradas. Traduce el Subject, el Message y el From Name de cada ruta usando el flujo de trabajo de traducción de formularios. Los mensajes HTML conservan sus etiquetas y atributos; preserva cada etiqueta de combinación exactamente.

Las confirmaciones al cliente y las notificaciones al administrador usan el idioma de la página donde el visitante envió el formulario. Los títulos del formulario y las etiquetas y etiquetas de opciones de Include Form Data siguen el idioma de la notificación; los valores introducidos por el visitante permanecen sin cambios. Las traducciones que faltan o que son estructuralmente inválidas usan el texto original.

Las integraciones de confianza pueden anular el idioma mediante pom_forms_notification_language( string $language, string $email_type, array $meta, array $config ). Devuelve un slug de idioma de Polylang configurado o una configuración regional de POM Translate. Por ejemplo, un sitio con POM Translate que tiene el inglés habilitado puede usar:

add_filter('pom_forms_notification_language', static function (string $language, string $email_type, array $meta): string {
    return $email_type === 'admin' && (int) ($meta['form_id'] ?? 0) === 123
        ? 'en_US'
        : $language;
}, 10, 3);

Usa el slug configurado, como en, en lugar de en_US con Polylang. Esto cambia únicamente el texto de la notificación; las condiciones de la ruta, los destinatarios y los archivos adjuntos permanecen igual.

Archivos adjuntos

Los archivos estáticos de la biblioteca de medios pueden adjuntarse a una ruta. Las subidas locales de los visitantes requieren almacenamiento y el ajuste de archivos adjuntos a nivel de formulario en Storage/Advanced. Ten en cuenta los límites de tamaño de archivo y de buzón. Los archivos de Google Drive permanecen remotos y se representan mediante información de archivo en lugar de adjuntos de correo electrónico.

Cuando el servicio de correo activo admite validación previa al envío, el formulario prepara todas las notificaciones coincidentes de administrador y de cliente antes de enviar cualquiera de ellas. Cada mensaje se comprueba por separado, incluidos su cuerpo, cabeceras, codificación y todos los archivos adjuntos seleccionados. Dos mensajes que individualmente cumplen el límite del servicio siguen siendo válidos aunque su tamaño combinado supere el límite de un solo mensaje.

Si una notificación es demasiado grande, el formulario muestra un error pidiendo al visitante que reduzca los archivos o se ponga en contacto con el administrador del sitio. No se envía ninguna notificación de ese envío y los archivos adjuntos nunca se eliminan automáticamente. Un archivo puede superar el límite del campo de subida y, aun así, hacer que un correo sea demasiado grande después de la codificación. Reduce los archivos, elimina los adjuntos estáticos innecesarios de la ruta o desactiva la entrega de adjuntos cuando la revisión segura de los archivos almacenados se ajusta al flujo de trabajo.

La validación previa detecta los fallos de preparación conocidos; no garantiza la aceptación posterior por parte de un servidor remoto ni la entrega a una bandeja de entrada. Prueba cada ruta coincidente con tamaños de archivo realistas antes de publicar el formulario.

Si el correo no llega, confirma que la ruta coincidió, que el destinatario es válido y que otro correo de WordPress puede salir del sitio. Continúa con Etiquetas de combinación o Notificaciones, envíos y conservación.