• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Plugins / Enviar correo de acuerdo al texto del asunto en Contact Forms 7

Enviar correo de acuerdo al texto del asunto en Contact Forms 7

[ 13 marzo 2024 ] [ Autor: Jhon Marreros Guzmán ][ Plugins - Intermedio] [ ]

mejoras

Suscríbete a DecodeCMS:  

En este artículo veremos como enviar un correo a una dirección u otra de acuerdo a las palabras que aparecen en el asunto del formulario de contacto del plugin Contact Forms 7 (CF7).

Resultado Final

Al final queremos que nos llegue el mensaje de contacto a diferentes correos de acuerdo al asunto.

Envio de correo de acuerdo al asunto

 

Generalidades

Si tenemos un formulario de contacto posiblemente en ciertos casos nos interese que de acuerdo a lo que se coloca en el campo de texto de asunto nos llegue algún correo a otra dirección.

Asegúrate de tener en tu formulario un campo para el asunto llamado: your-subject.

Formulario por defecto CF7

 

Código para el envío condicional de correo de acuerdo al asunto

En el siguiente código establecemos algunas palabras clave y si el asunto del formulario las incluye entonces enviamos un correo electrónico a una dirección determinada.

Puedes agregar este código como parte del archivo functions.php de tu tema hijo o usando algún plugin de Snippets.
add_filter( 'wpcf7_before_send_mail', 'dcms_change_email_cf7', 10, 3 );

function dcms_change_email_cf7( $contact_form, $abort, $submission ) {
    $words = [ "soporte", "ayuda", "problemas", "problema" ];
    $subject = $submission->get_posted_data( 'your-subject' );
    $email = "ventas@correo.com";

    foreach ($words as $word) {
        if ( str_contains(strtolower($subject), $word)){
            $email = "soporte@correo.com";
            break;
        }
    }
    
    $properties = $contact_form->get_properties();
    $properties['mail']['recipient'] = $email;
    $contact_form->set_properties($properties);
 
    return $contact_form;    
}

En el código anterior:

  • Se hace referencia al Hook de filtro de CF7 wpcf7_before_send_mail con la función dcms_change_email_cf7
  • Dentro de la función en la variable $words definimos las palabras condicionales para enviar el correo
  • Obtenemos el asunto actual del formulario
  • Definimos el correo por defecto
  • Comprobamos para cada palabra condicional si forma parte del asunto del formulario
  • Si forma parte entonces redefinimos el correo al cual se enviará
  • Obtenemos las propiedades del formulario y cambiamos el correo de recepción
  • Finalmente devolvemos el objeto modificado

 

Conclusión

Como has podido comprobar, podemos definir una lógica a través de programación antes de enviar el formulario realizado con el plugin CF7.

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Cargar scripts y estilos de Contact Forms 7 condicionalmenteCargar scripts y estilos de Contact Forms 7 condicionalmente
  • Autenticación con JWT en la API de WordPressAutenticación con JWT en la API de WordPress
  • Widget para el dashboard de WordPressCrear un Widget para el dashboard de WordPress
  • Cambiar el estado de pedidos de WooCommerce a través de códigoCambiar el estado de pedidos de WooCommerce a través de código
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (1 votos, promedio: 5,00 de 5)
Cargando...

Interacciones con los lectores

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Omnisend
Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad SEO social woocommerce

Populares

Usar la REST API para crear usuarios en WordPress

Cómo usar Roles y Capacidades en WordPress

Ocultar precios de productos a visitantes en WooCommerce

Cargar scripts y estilos de Contact Forms 7 condicionalmente

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2026 Todos los derechos reservados