¡Atención!

Este artículo contiene código PHP y está destinado a desarrolladores. Ofrecemos este código como cortesía, pero no proporcionamos soporte para personalizaciones de código o desarrollo de terceros.

Para obtener ayuda adicional, consulta el tutorial de WPBeginner sobre cómo añadir código personalizado.

Descartar

Cómo denegar números de teléfono específicos para que no envíen datos

Introducción

¿Le gustaría denegar números de teléfono específicos para que no envíen entradas en sus formularios? Puede crear fácilmente un pequeño fragmento de PHP que bloqueará el envío del formulario si el número de teléfono se encuentra en la lista de denegación. En este tutorial, le guiaremos a través de los pasos sobre cómo lograr esto.

Creación de su formulario

Primero, deberá comenzar creando un nuevo formulario y agregando sus campos a este formulario, que incluirá un campo de formulario Teléfono.

En nuestro tutorial, vamos a usar el formato Smart para nuestro campo Teléfono.

Si necesita ayuda para crear su formulario, consulte esta documentación.

cree su formulario agregue su campo de teléfono y el resto de sus campos

Denegar números de teléfono específicos

Para denegar números de teléfono específicos, deberá agregar este fragmento a su sitio.

Si necesita ayuda sobre cómo agregar fragmentos a su sitio, consulte este tutorial.

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

Este fragmento solo se procesará en el ID de formulario 5. Deberá actualizar este ID para que coincida con su propio ID de formulario. Si necesita ayuda para encontrar su ID, revise esta útil guía.

El $phone_blacklist es una lista de números que creará y que detendrá el envío del formulario si uno de los números de teléfono introducidos en el formulario coincide con un número de esta lista.

El fragmento anterior se basa en el uso del Formato Smart para el campo Teléfono. Consulte los comentarios en el fragmento anterior para saber cómo formatear la matriz si utiliza el Formato de EE. UU. o Internacional.

con este fragmento ahora puede denegar números de teléfono específicos para que no envíen su formulario

¡Y eso es todo lo que necesita! ¿Le gustaría también convertir el número de teléfono en un enlace dentro de la notificación por correo electrónico? Eche un vistazo a nuestro tutorial sobre Cómo hacer que los números de teléfono sean un enlace en las notificaciones por correo electrónico.

Referencia de acción: wpforms_process_validate_phone