Comment empêcher les adresses IP de remplir votre formulaire ?

Introduction

Souhaitez-vous bloquer les adresses IP pour qu'elles ne remplissent pas votre formulaire ? Vous pouvez facilement empêcher les utilisateurs de remplir votre formulaire avec la liste Allow/Deny de WPForms, mais saviez-vous que vous pouvez aussi les bloquer en fonction de leur adresse IP ? Dans ce tutoriel, nous allons vous montrer comment utiliser un petit snippet PHP pour réaliser cela.

Pour plus d'informations sur la création d'une liste d'autorisation/d'interdiction, veuillez consulter ce tutoriel.

Création du formulaire

Tout d'abord, créez votre formulaire et ajoutez-y vos champs. Si vous avez besoin d'aide pour créer votre formulaire, consultez cette documentation.

commencez par créer votre formulaire et ajoutez vos champs

Ajout du snippet

Une fois le formulaire créé et publié, vous pouvez maintenant ajouter cet extrait à votre site.

Si vous ne savez pas comment ou où ajouter des snippets à votre site, veuillez consulter ce tutoriel.

/**
 * 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 );

Ce snippet recherche d'abord l'adresse IP de l'utilisateur et si elle correspond à la liste des adresses IP bloquées, le formulaire ne sera pas soumis et une erreur s'affichera.

avec cet extrait, vous pouvez désormais bloquer les adresses IP

Et c'est tout ce dont vous avez besoin pour bloquer les adresses IP dans vos formulaires WPFForms. Souhaitez-vous également bloquer les soumissions de formulaire par nom ? Consultez notre tutoriel sur Comment bloquer les noms pour qu'ils ne remplissent pas votre formulaire.

Référence de l'action : wpforms_process