Comment empêcher des numéros de téléphone spécifiques d'être soumis ?

Introduction

Souhaitez-vous interdire à certains numéros de téléphone de soumettre des entrées dans vos formulaires ? Vous pouvez facilement créer un petit snippet PHP qui bloquera la soumission du formulaire si le numéro de téléphone se trouve dans la liste de refus. Dans ce tutoriel, nous allons vous expliquer les étapes à suivre pour y parvenir.

Création du formulaire

Commencez par créer un nouveau formulaire et ajoutez-y vos champs, dont le champ Téléphone.

Dans notre tutoriel, nous allons utiliser le format Smart pour notre champ Téléphone.

Si vous avez besoin d'aide pour créer votre formulaire, veuillez consulter cette documentation.

créez votre formulaire ajoutez votre champ téléphone et le reste de vos champs

Refuser des numéros de téléphone spécifiques

Pour refuser des numéros de téléphone spécifiques, vous devez ajouter cet extrait à votre site.

Si vous avez besoin d'aide pour ajouter des snippets à votre site, veuillez consulter ce tutoriel.

/*
 * Deny specific phone numbers from your WPForms.
 *
 * @link https://wpforms.com/developers/how-to-deny-specific-phone-numbers-from-submitting/
*/
  
function wpf_dev_blacklist_phone( $field_id, $field_submit, $form_data ) {
 
    // List each number in this array and separate with a comma using one of the formats detailed below
 
    // Smart         Phone Format - +12025550164
    // US            Phone Format - (202) 555-0164
    // International Phone Format - 2025550164
    
    // Optional, you can limit to specific forms. Below, we restrict output to form ID 5
    // Remove this section if you wish to run on all forms
    if ( absint( $form_data[ 'id' ] ) !== 5 ) {
        return;
    }
 
    // Add your phone numbers separated by a comma
    $phone_blacklist = array( 
            '+12025550164',
             
    );
  
    if( in_array( $field_submit, $phone_blacklist ) ) { 
        wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'Phone not accepted!', 'wpforms' );
        return;
    }
}
 
add_action('wpforms_process_validate_phone', 'wpf_dev_blacklist_phone', 10, 3 );

Ce snippet ne sera traité que sur le formulaire ID 5. Vous devrez mettre à jour cet identifiant pour qu'il corresponde à l'identifiant de votre propre formulaire. Si vous avez besoin d'aide pour trouver votre identifiant, veuillez consulter ce guide utile.

La liste noire $phone_blacklist est une liste de numéros que vous créerez et qui empêchera le formulaire de se soumettre si l'un des numéros de téléphone saisis dans le formulaire correspond à un numéro figurant dans cette liste.

L'extrait ci-dessus est basé sur l'utilisation du format intelligent pour le champ Téléphone. Veuillez consulter les commentaires de l'extrait ci-dessus pour savoir comment formater le tableau si vous utilisez le format américain ou international.

Avec ce snippet, vous pouvez désormais empêcher des numéros de téléphone spécifiques de soumettre votre formulaire.

Et c'est tout ce dont vous avez besoin ! Vous souhaitez également transformer le numéro de téléphone en lien à l'intérieur de la notification par courrier électronique ? Consultez notre tutoriel " Comment transformer les numéros de téléphone en lien dans les notifications par courrier électronique".

Référence de l'action : wpforms_process_validate_phone