Descrizione
Il wpforms_datetime_date_dropdowns
filtra le etichette e le opzioni del formato a discesa del campo data.
Parametri
- $data
- (array) (Obbligatorio) Etichette e intervalli di numeri utilizzati nelle caselle a discesa della data.
- $form_id
- (int) (obbligatorio) ID modulo.
- $campo
- (array) (Obbligatorio) Valori e proprietà del campo data.
Fonte
wpforms/pro/includes/fields/class-date-time.php
Ulteriori informazioni
Il wpforms_datetime_date_dropdowns
viene applicato a una matrice contenente le opzioni del menu a tendina della data. Può essere utilizzato per personalizzare le etichette dei menu a tendina del mese, del giorno e dell'anno, nonché le opzioni incluse in ciascuno di essi.
Nota: gli intervalli per giorni, mesi e anni possono accettare solo valori interi.
Esempi
Limitare le date
Nell'esempio riportato di seguito, la funzione limiterà i mesi da gennaio a giugno, i giorni dall'1 al 15 e l'anno inizierà dal 1980.
La funzione cambia anche le etichette rispetto a quelle predefinite MM/DD/YYYY
a M/D/Y
.
Ricordarsi di cambiare l'ID del modulo da 25
per far corrispondere l'ID del modulo specifico su cui si vuole eseguire il codice. Rimuovendo questo controllo, il codice verrà eseguito per tutti i moduli.
/** * Filters labels and options within the date field’s dropdown format. * @link https://wpforms.com/developers/wpforms_datetime_date_dropdowns/ * * @param array $dates Months, Days, and Years arguments. * @param int $form_id Form ID. * @param array $field Date field values and properties. * * @return array */ function wpf_dev_datetime_date_dropdowns( $dates, $form_id, $field ) { // Only run on my form with ID = 25 if ( absint( $form_id ) !== 25 ) { return $ranges; } $ranges = array( 'months' => range( 1, 6 ), 'days' => range( 1, 15 ), 'years' => range( date( 'Y' ), 1980 ), 'months_label' => esc_html__( 'M', 'wpforms' ), 'days_label' => esc_html__( 'D', 'wpforms' ), 'years_label' => esc_html__( 'Y', 'wpforms' ), ); return $ranges; } add_filter( 'wpforms_datetime_date_dropdowns', 'wpf_dev_datetime_date_dropdowns', 10, 3 );
Ricordarsi di aggiornare l'ID del modulo nello snippet in modo che corrisponda all'ID del proprio modulo. Se avete bisogno di aiuto per trovare il numero ID del vostro modulo, consultate questo tutorial.
Espandere gli anni
Se si desidera espandere gli anni in modo che non si fermino al 2023, utilizzare questo snippet e modificare l'anno massimo di 2050
a ciò che si desidera.
/** * Filters labels and options within the date field’s dropdown format. * @link https://wpforms.com/developers/wpforms_datetime_date_dropdowns/ * * @param array $dates Months, Days, and Years arguments. * @param int $form_id Form ID. * @param array $field Date field values and properties. * * @return array */ function wpf_dev_datetime_date_dropdowns( $dates, $form_id, $field ) { $ranges = array( 'months' => range( 1, 12 ), 'days' => range( 1, 31 ), 'years' => range( date( 'Y' ), 2050 ), 'months_label' => esc_html__( 'MM', 'wpforms' ), 'days_label' => esc_html__( 'DD', 'wpforms' ), 'years_label' => esc_html__( 'YYYY', 'wpforms' ), ); return $ranges; } add_filter( 'wpforms_datetime_date_dropdowns', 'wpf_dev_datetime_date_dropdowns', 10, 3 );
Correlato
Riferimento articolo: Personalizzazione del campo data-ora Opzioni data