Come includere le descrizioni dei campi nelle notifiche via e-mail

Si desidera includere le descrizioni dei campi nelle notifiche via e-mail? Per impostazione predefinita, {all_fields} include tutti i campi e le etichette del modulo, a eccezione delle descrizioni. Tuttavia, è possibile includere facilmente le descrizioni all'interno delle notifiche e-mail, utilizzando un piccolo snippet PHP. In questo tutorial, vi guideremo attraverso ogni passo per ottenere questo risultato!

Questi snippet non funzioneranno se avete selezionato il modello di e-mail in testo normale.

Creazione del modulo

Per prima cosa, è necessario creare il modulo. Il nostro modulo conterrà solo pochi campi e solo in un campo sarà inserita la Descrizione del campo.

Una volta creato il modulo, è sufficiente completare le descrizioni dei campi che si desidera includere nella notifica via e-mail.

Aggiungete le descrizioni dei vostri campi da inserire nelle notifiche via email

Se avete bisogno di assistenza per creare il vostro modulo, visitate questa documentazione.

Selezione del modello di e-mail

In questa esercitazione, è necessario assicurarsi di non aver selezionato il modello di e-mail in testo normale. Se non siete sicuri di quale impostazione avete o di quale sia, potete sempre consultare questa documentazione per vedere dove modificare questa opzione.

Nelle impostazioni di WPForms, nella scheda Email, questo tutorial utilizza l'impostazione Modello email HTML

Includere le descrizioni dei campi nella notifica

Ora è il momento di aggiungere lo snippet al vostro sito. Se avete bisogno di aiuto per aggiungere gli snippet al vostro sito, consultate questo 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 );

Aggiungendo questo snippet, le descrizioni dei campi saranno incluse in tutte le notifiche e-mail.

ora le descrizioni dei campi saranno incluse in ciascuna notifica

Ed ecco fatto! Ora avete incluso le descrizioni dei campi nelle vostre notifiche e-mail! Volete anche nascondere le scelte di immagine dalle notifiche via e-mail? Date un'occhiata all'articolo su Come nascondere le scelte di immagine nelle e-mail di notifica.

Filtro di riferimento

wpforms_html_campo_valore

FAQ

D: Posso stilizzare le descrizioni dei campi nella notifica?

R:È possibile aggiungere alcuni stili CSS alle descrizioni dei campi utilizzando questo snippet.

/*
 * 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 );

Ora è possibile aggiungere uno stile alle descrizioni dei campi con questo filtro

D: È possibile indirizzare un solo modulo in base all'ID del modulo?

R: Assolutamente sì! Se volete farlo solo per un modulo, utilizzate questo snippet.

/*
 * 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 );

È necessario sostituire il 780 nello snippet con l'ID del proprio modulo. Se avete bisogno di aiuto per trovare l'ID del vostro modulo, consultate questo tutorial.

D: Come posso aggiungere le descrizioni dei campi alle voci?

R: È possibile includere le descrizioni dei campi quando si visualizzano le voci dei moduli aggiungendo questo snippet al sito.

/*
 * 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 );

Utilizzando l'opzione entry-single consente di visualizzare le descrizioni dei campi quando si visualizza una singola voce. Le descrizioni dei campi non saranno salvate in modo permanente su tutte le voci, se si utilizza questo snippet sulla voce corrente visualizzata, le descrizioni dei campi saranno visualizzate sullo schermo.

D: Posso aggiungere solo alcune descrizioni di campo invece di tutte?

R:Assolutamente sì! Per questo esempio, includeremo solo le descrizioni dei campi per il campo Nome.

/*
 * 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 );