Achtung!

Dieser Artikel enthält PHP-Code und richtet sich an Entwickler. Wir stellen diesen Code als Service zur Verfügung, bieten jedoch keine Unterstützung für Codeanpassungen oder die Entwicklung durch Dritte.

Für zusätzliche Hilfe siehe das Tutorial von WPBeginner zum Hinzufügen von benutzerdefiniertem Code.

Schließen

IP-Adressen von der Formularübermittlung ausschließen

Einleitung

Möchten Sie IP-Adressen von der Übermittlung Ihres Formulars ausschließen? Sie können Benutzer ganz einfach mit der Zulassungs-/Sperrliste von WPForms blockieren, aber wussten Sie, dass Sie sie auch nur anhand ihrer IP-Adresse blockieren können? In diesem Tutorial zeigen wir Ihnen, wie Sie dies mit einem kleinen PHP-Snippet erreichen.

Weitere Informationen zur Erstellung einer Zulassungs-/Sperrliste finden Sie in diesem Tutorial.

Erstellung des Formulars

Erstellen Sie zuerst Ihr Formular und fügen Sie Ihre Felder hinzu. Wenn Sie Hilfe beim Erstellen Ihres Formulars benötigen, lesen Sie bitte diese Dokumentation.

Beginnen Sie mit der Erstellung Ihres Formulars und dem Hinzufügen Ihrer Felder

Hinzufügen des Snippets

Sobald das Formular erstellt und veröffentlicht ist, können Sie diesen Snippet jetzt zu Ihrer Website hinzufügen.

Wenn Sie nicht sicher sind, wie oder wo Sie Snippets zu Ihrer Website hinzufügen können, lesen Sie bitte dieses Tutorial.

/**
 * Block form submissions based on IP address
 *
 * @link   https://wpforms.com/developers/how-to-block-ip-addresses-from-completing-your-form/
 */
function wpf_ip_block( $fields, $entry, $form_data ) {
      
    // Get the current users IP address
    $ip_address = wpforms_get_ip();

    // List out the IP addresses separated by a comma
    $blocked_ips = array(
        '129.222.6.90',
        '127.0.0.1',
    );
      
    // Check if the current user IP address is a blocked IP
    if ( in_array( $ip_address, $blocked_ips ) ) {
		
        // Block form submission and print error
        wpforms()->process->errors[ $form_data[ 'id' ] ] [ 'footer' ] = esc_html__( 'Your IP address has been blocked. Please contact the site administrator for further assistance.', 'text-domain' );
    }
}
add_action( 'wpforms_process', 'wpf_ip_block', 10, 3 );

Dieser Snippet findet zuerst die IP-Adresse des Benutzers und wenn diese mit der Liste der blockierten IP-Adressen übereinstimmt, wird das Formular nicht übermittelt und eine Fehlermeldung angezeigt.

Mit diesem Snippet können Sie jetzt IP-Adressen blockieren

Und das ist alles, was Sie brauchen, um IP-Adressen von der Übermittlung an eines Ihrer WPForms-Formulare auszuschließen. Möchten Sie auch Formularübermittlungen nach Namen blockieren? Sehen Sie sich unser Tutorial an: Namen von der Formularübermittlung ausschließen.

Aktionsreferenz: wpforms_process