Come personalizzare il campo a discesa moderno

Volete personalizzare il campo Modern Dropdown di WPForms? Utilizzando questo campo, si consente agli utenti di digitare in una casella di ricerca e di visualizzare i risultati in base ai caratteri immessi e, con un piccolo snippet PHP, si può controllare il numero di risultati che vengono visualizzati man mano che vengono inseriti i tasti. In questo tutorial, vi guideremo attraverso ogni passo per personalizzare il numero di risultati visualizzati.

Creazione del modulo

Per prima cosa, è necessario creare il modulo e aggiungere i campi con almeno un campo del modulo a discesa incluso nel modulo.

Creare il modulo e aggiungervi un campo a discesa

Se avete bisogno di aiuto per creare il vostro modulo, consultate questa documentazione.

Una volta aggiunto il campo a discesa, fare clic sulla scheda Avanzate e selezionare Moderno per lo stile del campo a discesa.

Impostare lo stile della tendina su moderno

Personalizzazione del menu a tendina moderno

Ora è il momento di aggiungere lo snippet di codice per personalizzare il campo Modern Dropdown.

Se avete bisogno di aiuto per aggiungere gli snippet al vostro sito, consultate questo tutorial.

/**
 * Customize modern dropdown search results
 *
 * @link https://wpforms.com/developers/how-to-customize-the-modern-dropdown-field/
 */

function wpf_dev_modern_dropdown_search_results( $config, $forms ) {
	
	// Change 519 to an ID of your actual form or remove this condition to apply to all forms.
	if ( ! array_key_exists( 519, $forms ) ) {
        return $config;
	}
	
	// Change 6 to a large number to show all the matching results for every search (might impact performance).
	$config[ 'searchResultLimit' ] = 6;
	
	return $config;
}
add_filter( 'wpforms_field_select_choicesjs_config', 'wpf_dev_modern_dropdown_search_results', 10, 2 );

Ricordate di modificare il codice 519 in modo che corrisponda al vostro ID modulo.

Se non siete sicuri di come trovare l'ID del vostro modulo, visitate questa guida.

Una volta aggiunto lo snippet e aggiornato l'ID del modulo, l'ultimo passo consiste nell'impostare il searchResultLimit sul numero che si desidera mostrare quando gli utenti digitano nella casella di ricerca. Nel nostro esempio, vogliamo mostrare solo i 6 risultati principali.

Ora è possibile personalizzare facilmente i moderni risultati di ricerca a tendina

E questo è tutto ciò di cui avete bisogno! Volete anche cambiare il testo che viene visualizzato quando non vengono trovati risultati? Date un'occhiata al nostro tutorial su Come modificare il testo Nessun risultato trovato nel campo a discesa Modern.

Filtro di riferimento

wpforms_field_select_choicesjs_config

FAQ

D: Posso limitare il menu a tendina per selezionare solo 2 voci?

R: Assolutamente sì! Innanzitutto, occorre modificare il campo Modern Dropdown e, nella scheda Advanced, attivare l'opzione per abilitare la selezione di opzioni multiple.

Attivare l'interruttore per abilitare la selezione di opzioni multiple.

Una volta attivata questa opzione, è possibile aggiungere questo snippet al proprio sito.

/**
 * Customize modern dropdown search results
 *
 * @link https://wpforms.com/developers/how-to-customize-the-modern-dropdown-field/
 */

function wpf_dev_modern_dropdown_select_limit( $config, $forms ) {
     
    // Change 519 to an ID of your actual form or remove this condition to apply to all forms.
    if ( ! array_key_exists( 519, $forms ) ) {
        return $config;
    }
     
    // Change 2 to a large number to show all the matching results for every search (might impact performance).
    $config[ 'maxItemCount' ] = 2;

    // Modify the 'maxItemText' to make it translatable when limiting the selections.
    $config['maxItemText'] = sprintf( __( 'Only %1$s values can be added', 'wpforms' ), $config['maxItemCount'] );
     
    return $config;
}
add_filter( 'wpforms_field_select_choicesjs_config', 'wpf_dev_modern_dropdown_select_limit', 10, 2 );

Con questo snippet è possibile limitare le scelte selezionate nel moderno campo a tendina

D: Come posso fare in modo che la mia ricerca restituisca una corrispondenza più esatta?

R: È possibile modificare il valore di soglia per essere più specifici nella ricerca. Basta aggiungere questo snippet al sito.

/**
 * Return more specific results
 *
 * @link https://wpforms.com/developers/how-to-customize-the-modern-dropdown-field/
 */

function wpf_dev_modern_dropdown_select_search( $config, $forms ) {
     
    // Providing more specific search results 
    // This will be added to all WPForms Modern Dropdown field for the search bar
    $config[ 'fuseOptions' ] = array(
		'threshold' =>  0.1
	);
      
    return $config;
}
add_filter( 'wpforms_field_select_choicesjs_config', 'wpf_dev_modern_dropdown_select_search', 10, 2 );