Last active
February 22, 2021 18:49
-
-
Save garagemwp/c320a48a688e13af00b80e4370c63a50 to your computer and use it in GitHub Desktop.
Action para não permitir que uma conta seja cadastrada no Woocommerce com um CPF já existente.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/* | |
Action para não permitir que uma conta seja cadastrada no Woocommerce com um CPF ou CNPJ já existente. | |
Esta action adiciona esta condicional para o campo de CPF ou CNPJ inserido pelo do plugin Extra Checkout Fields for Woocommerce | |
Você pode inserir este código no arquivo functions.php do seu tema. | |
*/ | |
add_action('woocommerce_checkout_process', 'check_if_cpf_cnpj_exists'); | |
function check_if_cpf_cnpj_exists() { | |
if( isset( $_POST['billing_cpf'] ) ){ | |
$label = "CPF"; | |
$args = array( | |
'meta_key' => 'billing_cpf', | |
'meta_value' => $_POST['billing_cpf'] | |
); | |
}elseif( isset( $_POST['billing_cnpj'] ) ){ | |
$label = "CNPJ"; | |
$args = array( | |
'meta_key' => 'billing_cnpj', | |
'meta_value' => $_POST['billing_cnpj'] | |
); | |
} | |
$user_cpf_cnpj_exists = get_users( $args ); | |
if ( $user_cpf_cnpj_exists ) | |
wc_add_notice( 'Já existe uma conta cadastrada com o ' . $label . ' informado.', 'error' ); | |
} | |
?> |
Oi pessoal boa tarde, blza?
Estou com problema com clientes que estão cadastrando emails diferentes para pegar o desconto que dou para clientes novos/primeira compra. Alguém ja usou essa Action? Funciona na boa? Sou super leiga, nem sei onde deveria coloca-la mas isso eu aprendo hehe...
Seria muito bom ter um plugin que tivesse essa função de identificar o cpf ja cadastrado.
Obrigada
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Olá, @garagemwp, parabéns pela iniciativa e obrigado por compartilhar! ;-)
Eu acrescentei um IF no inicio do bloco para que a validação ocorra somente quando o usuário não estiver logado, caso contrário usuários logados não conseguem realizar novas compras.
Você sabe qual hook nós poderiamos utilizar para replicar esta validação no formulário de edição do endereço de cobrança, já que os campos cpf e cnpj também são exibidos neste formulário?