Desempenho e monitorização

Como carregar o script do reCAPTCHA com o Contact Form 7 apenas onde for necessário

Revisto a 3 min de leitura WordPress desempenho plugins

O Contact Form 7 pode carregar o reCAPTCHA v3 em páginas sem um formulário visível. Isto dá contexto à análise das interações. O fabricante desaconselha limitá-lo a poucas páginas porque pode reduzir a precisão da deteção de bots.

Antes de o alterar, meça o seu custo e verifique que integração antispam a sua instalação utiliza realmente. Ocultar o selo ou atrasar o script não equivale a eliminar a sua transferência nem a manter a proteção intacta.

Porque não basta procurar um shortcode

Um formulário pode estar num modelo, bloco reutilizável, construtor, widget, janela modal ou rodapé. Procurar apenas o shortcode no conteúdo do artigo pode retirar os scripts onde ainda são necessários.

Se decidir fazer uma adaptação, faça primeiro o inventário de todos os formulários e de qualquer outro componente que use o script da Google. Faça o teste numa cópia com a mesma configuração de cache.

Exemplo limitado a páginas identificadas

Este exemplo mantém os scripts em duas páginas cujos IDs deve substituir e evita atuar noutras vistas que não sejam páginas. Só é válido se tiver verificado que não existem formulários nem outras integrações do reCAPTCHA nas páginas excluídas.

Acrescente-o a um plugin específico do site ou a um tema filho com controlo de versões. Não edite o tema pai, porque uma atualização pode substituí-lo.

add_action('wp_enqueue_scripts', function () {
    if (is_admin() || !is_page()) {
        return;
    }

    // Substitua estes IDs por TODAS as páginas que precisam de reCAPTCHA.
    $paginas_con_recaptcha = [123, 456];

    if (!is_page($paginas_con_recaptcha)) {
        wp_dequeue_script('wpcf7-recaptcha');
        wp_dequeue_script('google-recaptcha');
    }
}, 100);

É uma personalização, não uma opção oficial garantida. Os identificadores dos scripts e a sua forma de carregamento podem mudar com as versões. Outros plugins podem voltar a colocá-los na fila; confirme o resultado no navegador.

Validar e manter

Teste todos os formulários como visitante: carregamento, validações, envio e receção num endereço de teste controlado. Reveja a consola, a rede e o diagnóstico antispam; teste também os formulários que aparecem após uma interação.

Purgue a cache das páginas afetadas e observe se aumentam o spam ou as rejeições legítimas. Retire o código se a proteção piorar ou se um formulário deixar de funcionar.

Cada nova página com formulário e cada atualização da integração obrigam a rever esta lista. Se não a conseguir manter completa, mantenha o carregamento recomendado pelo Contact Form 7 e dê prioridade a outras melhorias de desempenho.

Também lhe pode ser útil

Algo não bate certo ou mudou? Diga-nos e revemos.