0
859

SHARE

como validar cnpj wordpress

Como Validar CNPJ no WordPress com Contact Form 7

Aprenda aqui neste Vídeo+Post como validar CNPJ utilizando o Contact Form 7, um dos plugins gratuitos de formulário de contato mais comuns do WordPress.

Ufa! Depois de bastante tempo sem publicar nada aqui no site, por diversos fatores como ter que atender clientes de serviços de marketing digital e dar consultorias pela minha agência M3 Marketing Digital, volto aqui para compartilhar um pouco mais do meu conhecimento com vocês. Neste post, vamos ver como validar CNPJ no WordPress utilizando um plugin de formulário de contato dos mais utilizados no mundo – o Contact Form 7.

Por que Validar CNPJ no WordPress?

Resolvi escrever este Post, pois um cliente teve esta necessidade e eu gastei alguns bons minutos pesquisando uma solução e como não achei nada específico, resolvi criar minha própria solução. Então, eu gravei um vídeo explicando o processo de validação de CNPJ no WordPress com uma função PHP e um filtro do próprio Contact Form 7, que você vê a seguir – Mas, abaixo do vídeo dou alguns links relacionados e um plugin para validar CNPJ para você baixar:

Validação de CNPJ com Contact Form 7

Apesar de ser uma coisa relativamente simples, validar CNPJ no WordPress com o Contact Form7 exige um pouco de código extra e uma função PHP, além do tal filtro que eu mencionei acima, que vou compartilhar com você neste post. Na verdade, eu criei um plugin para fazer a validação do CNPJ, então, você nem precisa mexer com código algum, apenas baixar e instalar o plugin no seu site, ok?

Bem, deixe-me te contar como foi isso…

Eu recebi um pedido de orçamento para validar o campo de CNPJ de um formulário de contato no site de um cliente. O campo era de texto e obrigatório, assim, não poderia ser deixado em branco, mas em contrapartida, ele poderia ser preenchido com um CNPJ Inválido. Então, comecei uma pesquisa no Google com “validar cnpj wordpress“, mas infelizmente não encontrei nada específico, apenas trechos de códigos e funções PHP para validar CNPJ.

Depois algumas páginas visitadas, achei um plugin que prometia ajudar na validação de campos no Contact Form 7, já que era o plugin de formulário que estávamos utilizando no nosso WordPress. Era o plugin Jquery Validation For Contact Form 7 – que me pareceu um bom plugin, mas é claro, não fazia validação de CNPJ.

Continuei minha busca e encontrei um tópico no fórum oficial (Custom field validation code), onde o autor do plugin falava sobre usar um filtro do próprio plugin para fazer a validação. Depois desta informação a busca ficou mais clara pra mim e cheguei até uma página no site oficial do Contact Form 7 que fala sobre “Custom Validation” – Validação Personalizada.

Vale a dica: Participe ativamente do fórum oficial, tem muito conteúdo útil por lá: http://wordpress.org/support/

Solução para Validar CNPJ

Neste ponto ficou bem claro o que eu deveria fazer – utilizar o filtro “wpcf7_validate_ + {type of the form-tag}” em conjunto com uma função PHP para validar CNPJ. Pesquisando, cheguei até um post no site “teo” sobre como validar CNPJ com PHP.

Para trabalhar com mais segurança, resolvi criar um plugin específico, utilizando a função e o filtro que detalho a seguir:

Criação do Plugin

Para criar o plugin (mais detalhes aqui), basta criar um arquivo “.php” com este trecho logo no inicio:

<?php
/*
Plugin Name: Validar CNPJ no WordPress
Description: Plugin Específico para validação de CNPJ utilizando o Contact Form 7
*/

Temos a abertura do PHP, um nome para o plugin e a descrição, que vão aparecer na página de plugins no Painel. Bem simples, não?

Função PHP para Validar CNPJ

Você pode ver a função no site que citei acima. Esta função vai fazer o cálculo do CNPJ para validá-lo e retornar “true” ou “false” – verdadeiro ou falso. Ou seja, vai dizer se é um CNPJ válido ou não.

Para utilizá-la e validar CNPJ é simples, veja a seguir:

// Valida um CNPJ
if ( valida_cnpj('12.345.678/0001-95') ) {
    echo "CNPJ correto.";
} else {
    echo "CNPJ inválido.";
}

O trecho acima utiliza uma estrutura de controle do PHP para estabelecer a condição IF (Se…) e ELSE (Senão…). Também é bem simples e você não tem que entender cada detalhe da função PHP se não quiser, basta saber como utilizá-la e é isso que acabei de mostrar a você.

Validação como um Filtro

O plugin oferece-nos a possibilidade de fazer alguns “upgrades” nas suas funções, utilizando filtros e ações – funções embutidas na codificação do plugin.

Como mencionei também acima, temos a página oficial que mostra como utilizar o filtro do plugin, mas tive que fazer uma adaptação para validar CNPJ, já que é o que precisamos. Ficou da seguinte forma:

// Aqui estão os filtros "wpcf7_validate_text"
add_filter('wpcf7_validate_text','valida_cnpj_filter', 20, 2); // Campo do CNPJ
add_filter('wpcf7_validate_text*', 'valida_cnpj_filter', 20, 2); // Campo do CNPJ Obrigatório

function valida_cnpj_filter( $result, $tag ) {
  $tag = new WPCF7_Shortcode( $tag );
 
  // Aqui vamos testar se é o campo certo...
  if ( 'cnpj' == $tag->name ) {

    // Criamos uma váriavel "$name" para vincular o campo
    $name = $tag->name;

    // Criamos a variável "$the_value" para receber a informação no envio do formulário 
    $the_value = $_POST[$name]; 
 
    // Verificamos se o campo é inválido usando nossa função para validar CNPJ
    if (!valida_cnpj($the_value)) {
      $result->invalidate( $tag, "CNPJ Inválido!" );
    }
 
  }

  return $result;
}

E pronto! Utilizamos o filtro e função PHP para validar o CNPJ no Contact Form 7. O que achou disso?

Criação do campo de CNPJ no formulário

Agora que definimos nosso plugin para validar CNPJ, precisamos criar um campo de CNPJ no Formulário. Para isto, vamos utilizar apenas um campo de texto com o atributo de nome “cnpj”, utilizando shortcode do próprio plugin (Obs: No tópico do fórum que citei acima, o autor do plugin mostra como criar seu próprio shortcode, caso queira criar um específico, por exemplo [cnpj]). Assim, neste caso, ficou da seguinte forma:

<p>
*CNPJ<br />
 [text* cnpj] 
</p>

Acima, temos um campo de texto obrigatório com o atributo nome “cnpj“.

Opções Extras

Se você quiser adicionar uma máscara (formato) ao campo de CNPJ, pode seguir este tutorial.

Conclusão

Agora, depois disso, temos um plugin para validar CNPJ no WordPress quando estivermos utilizando o plugin de formulário de contato Contact Form 7.

E, como havia prometido, aqui está o link de download do plugin – basta instalar e ativar.

É isso que eu tinha para compartilhar com você sobre validação de CNPJ. Espero que você tenha gostado e que seja útil nos seus projetos. Agora, deixe-me saber se isto funcionou para você – escreva nos comentários abaixo.

Até o próximo,

Não perca mais nenhuma atualização aqui!

Ative as Notificações!

Clique aqui e, em seguida, clique em Permitir na caixa que aparecerá na parte superior da janela, próximo à barra de endereços.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! Ao se tornar um assinante do WP24Horas, você terá acesso a:

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Não perca mais nenhuma atualização aqui!

Tabela de Conteúdo
PUBLICIDADE
Últimos Posts
Conclusão: Resumo e Próximos Passos no Desenvolvimento WordPress

Conclusão: Resumo e Próximos Passos no Desenvolvimento WordPress

Recursos e Comunidade: Onde Buscar Suporte e Continuar Aprendendo

Recursos e Comunidade: Onde Buscar Suporte e Continuar Aprendendo

Desenvolvimento WordPress como Profissão: Vale a Pena?

Desenvolvimento WordPress como Profissão: Vale a Pena?

Otimização para SEO e Performance no WordPress

Otimização para SEO e Performance no WordPress

Segurança no Desenvolvimento WordPress: Mantendo seu Site Seguro

Segurança no Desenvolvimento WordPress: Mantendo seu Site Seguro

Explorando a REST API do WordPress: Integrações e Funcionalidades Avançadas

Você precisa estar logado para ver esta informação.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! 

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!