Resumo de IA
Descrição
O filtro wpforms_datetime_date_dropdowns modifica os rótulos e opções no formato de dropdown de data do campo.
Parâmetros
- $datas
- (array) (Obrigatório) Rótulos e intervalos de números usados nos dropdowns de data.
- $id_do_formulario
- (int) (Obrigatório) ID do formulário.
- $field
- (array) (Obrigatório) Valores e propriedades do campo de data.
Fonte
wpforms/pro/includes/fields/class-date-time.php
Mais Informações
O filtro wpforms_datetime_date_dropdowns é aplicado a um array contendo as opções de dropdown de data. Ele pode ser usado para personalizar os rótulos dos dropdowns de mês, dia e ano, bem como quais opções estão incluídas em cada um desses dropdowns.
Observação: Os intervalos para dias, meses e anos só podem aceitar valores inteiros.
Exemplos
Limitando as datas
Neste exemplo mostrado abaixo, a função limitará os meses de janeiro a junho, os dias do 1º ao 15º e o ano começará em 1980.
A função também está alterando os rótulos do padrão MM/DD/AAAA para M/D/A.
Lembre-se apenas de alterar o ID do formulário de 25 para corresponder ao ID específico do formulário em que você deseja executar seu código. Remover essa verificação seria executado para todos os formulários.
/**
* 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 );
Por favor, lembre-se de atualizar o ID do formulário no snippet para corresponder ao seu próprio ID de formulário. Se precisar de ajuda para encontrar o número do seu ID de formulário, consulte este tutorial.
Expandindo os anos
Se você quiser expandir os anos para que eles não parem em 2023, use este snippet e altere o ano máximo de 2050 para o que você desejar.
/**
* 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 );
Relacionado
Referência do Artigo: Personalizar as Opções de Data do Campo Data e Hora