¿Desea incluir descripciones de campos en las notificaciones por correo electrónico? Por defecto, {all_fields} incluye todos los campos y etiquetas que se rellenan desde el formulario con la excepción de las descripciones. Sin embargo, puede incluir fácilmente descripciones dentro de las notificaciones por correo electrónico utilizando un pequeño fragmento de PHP. En este tutorial, te guiaremos paso a paso para lograrlo.
Tenga en cuenta que estos fragmentos no funcionarán si ha seleccionado la plantilla de correo electrónico Texto sin formato.
Creación del formulario
En primer lugar, tendrá que crear su formulario. Nuestro formulario tendrá sólo unos pocos campos incluidos y sólo un campo tendrá la Descripción del campo introducido.
Una vez creado el formulario, sólo tiene que rellenar las descripciones de los campos que desee incluir en la notificación por correo electrónico.
Si necesita ayuda para crear su formulario, visite esta documentación.
Selección de la plantilla de correo electrónico
En este tutorial, tendrá que asegurarse de que no tiene seleccionada la plantilla de correo electrónico Texto sin formato. Si no estás seguro de qué configuración tienes o cuál es esta configuración, siempre puedes revisar esta documentación para ver dónde cambiar esta opción.
Incluir las descripciones de los campos en la notificación
Ahora es el momento de añadir el snippet a su sitio. Si necesitas ayuda para añadir snippets a tu sitio, consulta este tutorial.
/* * Include field descriptions inside email notifications. * * @link https://wpforms.com/developers/how-to-include-field-descriptions-inside-email-notifications/ */ function wpf_dev_html_field_value( $field_val, $field, $form_data, $context ) { if ( $context !== 'email-html' ) { return $field_val; } if ( empty( $form_data[ 'fields' ][ $field[ 'id' ] ] ) ) { return $field_val; } $field_data = $form_data[ 'fields' ][ $field[ 'id' ] ]; if ( empty( $field_data[ 'description' ] ) ) { return $field_val; } return $field_val . '<p>' . $field_data[ 'description' ] . '</p>'; } add_filter( 'wpforms_html_field_value', 'wpf_dev_html_field_value', 20, 4 );
Al añadir este fragmento, las descripciones de los campos se incluirán en todas las notificaciones por correo electrónico.
Y ya está. Ya ha incluido las descripciones de los campos en sus notificaciones por correo electrónico. ¿Le gustaría también ocultar las opciones de imagen de las notificaciones por correo electrónico? Eche un vistazo al artículo sobre Cómo ocultar las opciones de imagen en los correos electrónicos de notificación.
Filtro de referencia
PREGUNTAS FRECUENTES
P: ¿Puedo modificar el estilo de las descripciones de los campos en la notificación?
R:Puedes añadir un poco de estilo CSS a las descripciones de los campos utilizando este fragmento.
/* * Include field descriptions inside email notifications. * * @link https://wpforms.com/developers/how-to-include-field-descriptions-inside-email-notifications/ */ function wpf_dev_html_field_value( $field_val, $field, $form_data, $context ) { if ( $context !== 'email-html' ) { return $field_val; } if ( empty( $form_data[ 'fields' ][ $field[ 'id' ] ] ) ) { return $field_val; } $field_data = $form_data[ 'fields' ][ $field[ 'id' ] ]; if ( empty( $field_data[ 'description' ] ) ) { return $field_val; } return $field_val . '<p style="padding:10px;background-color:#f6f6f6; color: #333333;"><i>' . $field_data[ 'description' ] . '</i></p>'; } add_filter( 'wpforms_html_field_value', 'wpf_dev_html_field_value', 20, 4 );
P: ¿Puedo seleccionar sólo un formulario por su ID?
R: ¡Por supuesto! Si sólo desea hacer esto para un formulario, utilice este fragmento.
/* * Include field descriptions inside email notifications. * * @link https://wpforms.com/developers/how-to-include-field-descriptions-inside-email-notifications/ */ function wpf_dev_html_field_value( $field_val, $field, $form_data, $context ) { // Only process this on form ID 780 if ( $form_data[ 'id' ] !== '780' ) { return $field_val; } if ( $context !== 'email-html' ) { return $field_val; } if ( empty( $form_data[ 'fields' ][ $field[ 'id' ] ] ) ) { return $field_val; } $field_data = $form_data[ 'fields' ][ $field[ 'id' ] ]; if ( empty( $field_data[ 'description' ] ) ) { return $field_val; } return $field_val . '<p>' . $field_data[ 'description' ] . '</p>'; } add_filter( 'wpforms_html_field_value', 'wpf_dev_html_field_value', 20, 4 );
Tendrá que sustituir el 780 en el fragmento para que coincida con su propio ID de formulario. Si necesitas ayuda para encontrar el ID de tu formulario, consulta este tutorial.
P: ¿Cómo puedo añadir las descripciones de los campos a las entradas?
R: Puede incluir descripciones de los campos cuando vea las entradas de su formulario añadiendo este fragmento a su sitio.
/* * Include field descriptions inside form entries. * * @link https://wpforms.com/developers/how-to-include-field-descriptions-inside-email-notifications/ */ function wpf_dev_html_field_value( $field_val, $field, $form_data, $context ) { if ( $context !== 'entry-single' ) { return $field_val; } if ( empty( $form_data[ 'fields' ][ $field[ 'id' ] ] ) ) { return $field_val; } $field_data = $form_data[ 'fields' ][ $field[ 'id' ] ]; if ( empty( $field_data[ 'description' ] ) ) { return $field_val; } return $field_val . '<br><br>' . $field_data[ 'description' ]; } add_filter( 'wpforms_html_field_value', 'wpf_dev_html_field_value', 20, 4 );
Utilizando el entry-single
estamos permitiendo que las descripciones de los campos se vean cuando se visualiza una sola entrada. Las descripciones de los campos no se guardarán de forma permanente en todas las entradas que utilicen este fragmento en la entrada que se esté visualizando en ese momento.
P: ¿Puedo añadir sólo determinadas descripciones de campo en lugar de todas?
R:¡Por supuesto! En este ejemplo, sólo vamos a incluir las descripciones de campo del campo Nombre.
/* * Include field descriptions inside form entries. * * @link https://wpforms.com/developers/how-to-include-field-descriptions-inside-email-notifications/ */ function wpf_dev_html_field_value( $field_val, $field, $form_data, $context ) { if ( $context !== 'email-html' ) { return $field_val; } if ( $field['type'] !== 'name' ) { return $field_val; } if ( empty( $form_data[ 'fields' ][$field[ 'id' ]] ) ) { return $field_val; } $field_data = $form_data[ 'fields' ][$field[ 'id' ]]; if ( empty( $field_data[ 'description' ] ) ) { return $field_val; } return $field_val . '<br><br>' . $field_data[ 'description' ]; } add_filter( 'wpforms_html_field_value', 'wpf_dev_html_field_value', 20, 4 );