Atenção!

Este artigo contém código PHP e destina-se a desenvolvedores. Oferecemos este código como uma cortesia, mas não fornecemos suporte para personalizações de código ou desenvolvimento de terceiros.

Para orientação extra, consulte o tutorial do WPBeginner sobre como adicionar código personalizado.

Dispensar

Como Bloquear Endereços IP de Completar seu Formulário

Introdução

Você gostaria de bloquear endereços IP de preencher seu formulário? Você pode facilmente bloquear usuários de preencher seu formulário com a lista Permitir/Negar do WPForms, mas você sabia que também pode bloqueá-los apenas com base em seu endereço IP? Neste tutorial, mostraremos como usar um pequeno trecho de PHP para conseguir isso.

Para mais informações sobre como criar uma lista Permitir/Negar, revise este tutorial.

Criando o formulário

Primeiro, crie seu formulário e adicione seus campos a este formulário. Se precisar de ajuda para criar seu formulário, verifique esta documentação.

comece criando seu formulário e adicionando seus campos

Adicionando o snippet

Assim que o formulário for criado e publicado, você pode adicionar este trecho ao seu site.

Se você não tem certeza de como ou onde adicionar trechos ao seu site, revise este 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 );

Este trecho primeiro encontrará o endereço IP do usuário e, se ele corresponder à lista de endereços IP bloqueados, o formulário não será enviado e um erro será exibido.

com este trecho você pode agora bloquear endereços IP

E é tudo o que você precisa para bloquear endereços IP de enviar qualquer um dos seus formulários WPForms. Você gostaria também de bloquear envios de formulário por nome? Confira nosso tutorial sobre Como Bloquear Nomes de Preencher Seu Formulário.

Referência de Ação: wpforms_process