Attenzione!

Questo articolo contiene codice PHP ed è destinato agli sviluppatori. Offriamo questo codice come cortesia, ma non forniamo supporto per personalizzazioni del codice o sviluppo di terze parti.

Per ulteriore assistenza, consulta il tutorial di WPBeginner su come aggiungere codice personalizzato.

Chiudi

Come negare numeri di telefono specifici dall'invio

Introduzione

Desideri negare a specifici numeri di telefono l'invio di voci nei tuoi moduli? Puoi creare facilmente un piccolo snippet PHP che impedirà l'invio del modulo se il numero di telefono è presente nell'elenco di negazione. In questo tutorial, ti guideremo attraverso i passaggi su come ottenere questo risultato.

Creazione del tuo modulo

Innanzitutto, dovrai iniziare creando un nuovo modulo e aggiungendo i tuoi campi a questo modulo, che includerà un campo modulo Telefono.

Nel nostro tutorial, utilizzeremo il formato Smart per il campo Telefono.

Se hai bisogno di assistenza nella creazione del tuo modulo, consulta questa documentazione.

crea il tuo modulo aggiungi il tuo campo telefono e il resto dei tuoi campi

Negare specifici numeri di telefono

Per negare specifici numeri di telefono, dovrai aggiungere questo snippet al tuo sito.

Se hai bisogno di aiuto su come aggiungere snippet al tuo sito, consulta questo 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 );

Questo snippet elaborerà solo per l'ID modulo 5. Dovrai aggiornare questo ID per corrispondere al tuo ID modulo. Se hai bisogno di aiuto per trovare il tuo ID, esamina questa utile guida.

Il $phone_blacklist è un elenco di numeri che creerai, il quale impedirà l'invio del modulo se uno dei numeri di telefono inseriti nel modulo corrisponde a un numero in questo elenco.

Lo snippet sopra si basa sull'utilizzo del Formato Smart per il campo Telefono. Si prega di consultare i commenti nello snippet sopra per imparare come formattare l'array se si utilizza il Formato USA o Internazionale.

con questo snippet puoi ora negare specifici numeri di telefono dall'invio del tuo modulo

E questo è tutto ciò di cui hai bisogno! Desideri anche trasformare il numero di telefono in un link all'interno della notifica e-mail? Dai un'occhiata al nostro tutorial su Come rendere i numeri di telefono un link nelle notifiche e-mail.

Riferimento Azione: wpforms_process_validate_phone