KI-Zusammenfassung
Möchten Sie ein Formular basierend auf bestimmten Tageszeiten planen? Dies ist ganz einfach – Sie können Ihr Formular mühelos so einrichten, dass es zu festgelegten Zeiten angezeigt oder nicht angezeigt wird.
In diesem Tutorial führen wir Sie durch den Prozess der nahtlosen Implementierung dieser Funktionalität mithilfe des bereitgestellten Code-Snippets.
Lassen Sie uns eintauchen und die Planung Ihres Formulars zum Kinderspiel machen!
Erstellen des Formulars
Zuerst erstellen wir ein neues Formular und fügen unsere Felder hinzu. Wenn Sie Hilfe beim Erstellen Ihres Formulars benötigen, werfen Sie einen Blick auf diesen hilfreichen Leitfaden.

Hinzufügen des Snippets
Sobald Ihr Formular erstellt ist, müssen Sie diesen Snippet auf Ihrer Website hinzufügen. Wenn Sie Hilfe benötigen, wie und wo Sie Snippets zu Ihrer Website hinzufügen können, lesen Sie bitte dieses 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 );
Es gibt ein paar Dinge, die in diesem Skript zu beachten sind. Dieses Skript läuft nur für die Formular-ID 3602. Sie müssen diese ID-Nummer also an Ihre eigene Formular-ID anpassen.
Um Hilfe beim Auffinden Ihrer Formular-ID-Nummer zu erhalten, prüfen Sie bitte dieses Tutorial.
Als Nächstes berücksichtigt die Variable $hours nur die aktuelle Stunde auf Ihrem Server, nicht die des Browsers oder Computers des Benutzers. Sie ruft die Stunde auch im 24-Stunden-Format mithilfe des Großbuchstabens H ab. Wenn Sie das 12-Stunden-Format verwenden möchten, ändern Sie das H in ein h. Abhängig vom gewählten Format müssen Sie möglicherweise if ( $hours >= 20 && $hours < 8 ) aktualisieren.
Denken Sie daran, die Nachricht, die Ihren Benutzern in der _e-Anweisung angezeigt wird, so zu aktualisieren, dass sie dem entspricht, was Sie anzeigen möchten, wenn das Formular für Ihre Besucher geschlossen ist.
Schließlich versteckt der letzte Teil des Skripts die Formular-ID 23 mit echo 'jQuery("#wpforms-form-3602").hide();';. Denken Sie daran, die 3602 an Ihre eigene Formular-ID anzupassen.
Wenn ein Besucher Ihre Seite besucht, wenn das Formular geschlossen ist, sieht er Ihre Nachricht.

Und das ist alles, was Sie brauchen, um ein Formular basierend auf der Tageszeit zu planen!
Möchten Sie als Nächstes eine Schaltfläche zum Senden anzeigen oder ausblenden? Werfen Sie einen Blick auf unser Tutorial zum bedingten Anzeigen der WPForms-Sende-Schaltfläche.
Verwandt
Aktionsreferenz: wpforms_frontend_output_after