Attenzione!

Questo articolo contiene codice PHP ed è destinato agli sviluppatori. Offriamo questo codice come cortesia, ma non forniamo supporto per personalizzazioni del codice o sviluppo di terze parti.

Per ulteriore assistenza, consulta il tutorial di WPBeginner su come aggiungere codice personalizzato.

Chiudi

Come archiviare i valori dei campi nella voce di WPForms

Desideri archiviare i valori dei campi per i campi Dropdown, Checkbox e Scelta multipla all'interno della voce di WPForms? In questo tutorial, ti mostreremo come utilizzare PHP per prendere il valore del campo invece dell'etichetta del campo e archiviarlo all'interno della voce.

Archiviazione del valore all'interno della voce

Per questo tutorial, aggiungeremo prima gli snippet al nostro sito prima di creare il modulo. Lo facciamo semplicemente perché parte di questo snippet serve ad abilitare l'opzione sui campi per Mostra valori per i campi Dropdown, Checkbox e Scelta multipla.

Per assistenza su come e dove aggiungere gli snippet, consulta questo tutorial.

Abbiamo aggiunto due snippet separati. Il primo snippet segue questo tutorial che ci permetterà di aggiungere valori ai campi per i campi Dropdown, Checkbox e Scelta multipla.

Il secondo snippet prende l'invio del modulo e, durante l'elaborazione, recupererà il valore del campo invece dell'etichetta del campo da archiviare nella voce.

Importante: Se stai utilizzando la logica condizionale nelle notifiche che si basa sul campo Dropdown, questo snippet potrebbe causare il malfunzionamento di tali regole.

Questo perché le condizioni di notifica confrontano l'etichetta della scelta, mentre questo snippet archivia e utilizza invece il valore della scelta. Poiché etichette e valori sono diversi, non corrisponderanno e la condizione non verrà attivata.

Creazione del modulo

Ora è il momento di creare il tuo modulo e aggiungere i tuoi campi, che includeranno almeno un Dropdown, Checkbox o Scelta multipla.

Se hai bisogno di aiuto nella creazione di moduli, consulta la nostra documentazione dettagliata.

inizia creando il tuo modulo e aggiungendo i tuoi campi

Ai fini di questa documentazione, abbiamo aggiunto un campo Dropdown per la preferenza di contatto. Per aggiungere i valori dei campi, seleziona semplicemente il campo e fai clic sulla scheda Avanzate.

fai clic sul pulsante per attivare Mostra valori

Fai clic sul pulsante per attivare Mostra valori e quindi fai clic sulla scheda Generale per aggiungere i valori dei tuoi campi.

aggiungi i valori che desideri nel tuo campo

Una volta salvato il modulo, ora puoi vedere che i valori dei campi sono archiviati all'interno della voce del modulo anziché dell'etichetta del campo.

utilizzando questo snippet puoi memorizzare i valori del campo nella voce

Desideri inviare anche i valori dei campi utilizzando il componente aggiuntivo Zapier? Dai un'occhiata al nostro tutorial su Come inviare valori dei campi a Excel utilizzando Zapier.

Filtro di Riferimento

wpforms_process_filter

FAQ

D: Come posso puntare a un singolo modulo?

R: Per puntare solo a 1 modulo, usa semplicemente questo snippet. Dovrai aggiornare il 584 per corrispondere al tuo ID modulo. Per trovare il tuo ID modulo, consulta questo tutorial per assistenza.

/**
 * Show values in Dropdown, checkboxes, and Multiple Choice.
 *
 * @link https://wpforms.com/developers/add-field-values-for-dropdown-checkboxes-and-multiple-choice-fields/
 */
   
add_action( 'wpforms_fields_show_options_setting', '__return_true' );

/**
 * Save choices 'values' instead of 'labels' for the fields with 'Show values' option enabled.
 *
 * @link https://wpforms.com/developers/how-to-store-field-values-in-the-wpforms-entry/
 */
function wpf_dev_process_filter_choices_values( $fields, $entry, $form_data ) {
	
	// Optional, you can limit to specific forms. Below, we restrict output to
    // form #584.
    if ( absint( $form_data[ 'id' ] ) !== 584 ) {
        return $fields;
    }
 
    if ( ! is_array( $fields ) ) {
        return $fields;
    }
 
    foreach ( $fields as $field_id => $field ) {
        if (
            isset( $field[ 'type' ] ) &&
            in_array( $field[ 'type' ], [ 'checkbox', 'radio', 'select' ], true ) &&
            ! empty( $form_data[ 'fields' ][ $field_id ][ 'show_values' ] )
        ) {
            $value_raw = ! empty( $field[ 'value_raw' ] ) ? $field[ 'value_raw' ] : '';
            $field[ 'value_raw' ] = $field[ 'value' ];
            $field[ 'value' ] = $value_raw;
            $fields[ $field_id ] = $field;
        }
    }
 
    return $fields;
};
add_filter( 'wpforms_process_filter', 'wpf_dev_process_filter_choices_values', 10, 3 );