Riassunto AI
Sei interessato a programmare un modulo in base a orari specifici della giornata? Raggiungere questo obiettivo è semplice: puoi impostare facilmente il tuo modulo in modo che appaia o non appaia durante le ore designate.
In questo tutorial, ti guideremo attraverso il processo di implementazione di questa funzionalità senza interruzioni utilizzando lo snippet di codice fornito.
Iniziamo e rendiamo la programmazione del tuo modulo un gioco da ragazzi!
Creazione del modulo
Per iniziare, creeremo un nuovo modulo e aggiungeremo i nostri campi. Se hai bisogno di aiuto nella creazione del tuo modulo, dai un'occhiata a questa guida utile.

Aggiunta dello Snippet
Una volta creato il tuo modulo, dovrai aggiungere questo snippet al tuo sito. Se hai bisogno di aiuto su come e dove aggiungere snippet al tuo sito, ti preghiamo di consultare questo tutorial.
/* Hide a specific form based on the time of day
*
* @link https://wpforms.com/developers/how-to-schedule-a-form-base-on-the-time-of-day/
*/
function wpf_dev_form_open_check( $form_data, $form ) {
// Only process this snippet on form ID 3602
if ( absint( $form_data[ 'id' ] ) !== 3602 ) {
return;
}
// H is for 24 hour format and h is for the 12 hour format
// Get the current 24 hour format in hours only, this is pulled from your server
$hours = intval(date('H'));
// The form will be closed to any submissions from 8PM (20 in 24-hour time format) to 8AM
if ( $hours >= 20 && $hours < 8 ) {
// Display a message stating the form is currently closed
_e( 'We\'re sorry, this contest is only open for entry everyday from 8:00 AM EST to 8:00 PM EST. Please check back tomorrow for your raffle entry.', 'textdomain' );
// Run a separate script to hide the form if it is currently closed to submissions
echo '<script type="text/javascript">';
echo 'jQuery("#wpforms-form-3602").hide();';
echo '</script>';
}
}
add_action( 'wpforms_frontend_output_after', 'wpf_dev_form_open_check', 10, 2 );
Ci sono alcune cose da notare in questo script. Questo script verrà eseguito solo sul modulo ID 3602, quindi dovrai aggiornare questo numero ID per corrispondere al tuo modulo.
Per aiuto nel trovare il numero ID del tuo modulo, controlla questo tutorial.
Successivamente, la variabile $hours esaminerà solo l'ora corrente sul tuo server, non sul browser o computer degli utenti. Recupera anche l'ora in formato 24 ore usando la H maiuscola. Se vuoi usare il formato 12 ore, cambia la H in una h. A seconda del formato scelto, potrebbe essere necessario aggiornare if ( $hours >= 20 && $hours < 8 ).
Ricorda di aggiornare il messaggio che verrà visualizzato ai tuoi utenti nell'istruzione _e per farlo corrispondere a ciò che desideri visualizzare quando il modulo è chiuso ai tuoi visitatori.
Infine, l'ultima parte dello script nasconderà il modulo ID 23 usando echo 'jQuery("#wpforms-form-3602").hide();';. Ricorda di aggiornare il 3602 per corrispondere al tuo ID modulo.
Se un visitatore visita la tua pagina quando il modulo è chiuso, vedrà il tuo messaggio.

E questo è tutto ciò che ti serve per programmare un modulo in base all'ora del giorno!
Successivamente, desideri mostrare o nascondere un pulsante di invio? Dai un'occhiata al nostro tutorial su come mostrare condizionalmente il pulsante di invio di WPForms.
Correlati
Riferimento azione: wpforms_frontend_output_after