Resumo de IA
Introdução
Gostaria de comparar duas datas dentro do mesmo formulário? Usando um pequeno trecho de código PHP, você pode facilmente pegar duas datas e compará-las dentro do mesmo formulário. Neste tutorial, vamos criar um trecho de código PHP que pegará dois seletores de data dentro do mesmo formulário.
Criando o formulário
Primeiro, precisaremos configurar nosso formulário. Vamos criar um formulário e adicionar nossos campos, incluindo os dois campos de formulário Data que estão definidos para o formato Data.

Depois de adicionar esses campos, certifique-se de defini-los como Seletor de Data na aba Avançado.

Se precisar de ajuda para criar seu formulário, por favor, revise esta documentação.
Adicionando o trecho de código para comparar duas datas
Antes de adicionar o trecho de código, você precisará localizar o ID do formulário e os IDs de ambos os campos para os campos Data que você acabou de adicionar ao seu formulário.
Se precisar de ajuda para encontrar esses números de ID, consulte este tutorial.
Quando você tiver esses IDs, poderá adicionar o seguinte trecho de código ao seu site.
/**
* Compare 2 dates inside the same form.
*
* @link https://wpforms.com/developers/how-to-compare-two-dates-in-the-same-form/
*/
function wpf_dev_compare_dates( $fields, $entry, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #731.
if ( absint( $form_data[ 'id' ] ) !== 731 ) {
return $fields;
}
// 3 is the ID of date 1 field
$date_1 = $fields[3][ 'unix' ];
// 4 is the ID of date 2 field
$date_2 = $fields[4][ 'unix' ];
// If date 2 is earlier of the same as time 1
if ( $date_2 <= $date_1 ) {
// [ 'header' ] will display the error message above the form
// [ 'footer' ] will display the error message under the form
wpforms()->process->errors[ $form_data[ 'id' ] ][ 'header' ] = esc_html__( 'The pickup date should not be earlier than the order date.', 'plugin-domain' );
}
}
add_action( 'wpforms_process', 'wpf_dev_compare_dates', 10, 3 );
Se você não tem certeza de onde ou como adicionar trechos de código personalizados ao seu site, verifique este tutorial.
A forma como o trecho de código funciona é que ele só será executado no ID do formulário 731, então ele procurará o ID do campo Data 3 e o ID do campo Data 4 e os atribuirá às variáveis $date_1 e $date_2 para que possa verificar se $date_2 é menor ou igual a $date_1. Se for, ele exibirá um erro acima do segundo campo Data mostrando que esta data não pode ser anterior à outra.

E é tudo o que você precisa para comparar duas datas dentro do mesmo formulário! Gostaria de fornecer alguma funcionalidade para restrição de idade ao seu formulário também? Confira nosso tutorial sobre Como Fornecer uma Restrição de Idade no Campo de Data do Formulário.
Relacionado
Referência de Ação: wpforms_process