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 bloccare gli indirizzi IP dal completamento del tuo modulo

Introduzione

Vuoi bloccare gli indirizzi IP dall'invio del tuo modulo? Puoi facilmente bloccare gli utenti dall'invio del tuo modulo con l'elenco Consenti/Nega di WPForms, ma sapevi che puoi anche bloccarli basandoti solo sul loro indirizzo IP? In questo tutorial, ti mostreremo come utilizzare un piccolo snippet PHP per ottenere questo risultato.

Per ulteriori informazioni sulla creazione di un elenco Consenti/Nega, esamina questo tutorial.

Creazione del modulo

Innanzitutto, crea il tuo modulo e aggiungi i tuoi campi a questo modulo. Se hai bisogno di aiuto nella creazione del tuo modulo, dai un'occhiata a questa documentazione.

inizia creando il tuo modulo e aggiungendo i tuoi campi

Aggiunta dello snippet

Una volta creato e pubblicato il modulo, puoi ora aggiungere questo snippet al tuo sito.

Se non sei sicuro di come o dove aggiungere snippet al tuo sito, esamina questo 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 );

Questo snippet troverà prima l'indirizzo IP dell'utente e se corrisponde all'elenco degli indirizzi IP bloccati, il modulo non verrà inviato e verrà visualizzato un errore.

con questo snippet puoi ora bloccare gli indirizzi IP

E questo è tutto ciò che ti serve per bloccare gli indirizzi IP dall'invio di uno qualsiasi dei tuoi moduli WPF. Vuoi anche bloccare gli invii di moduli per nome? Dai un'occhiata al nostro tutorial su Come bloccare i nomi dall'invio del tuo modulo.

Riferimento azione: wpforms_process