woocommerce-extra-checkout-fields-for-brazil
woocommerce-extra-checkout-fields-for-brazil copied to clipboard
Filtro woocommerce_billing_fields não funciona com os fields do plugin?
Pessoal, estou tentando aplicar o seguinte código para impedir que os clientes mudem os campos Nome, Sobrenome, CPF, RG, Data de Nascimento, Sexo, E-mail e Celular se eles já tiverem sido preenchidos anteriormente. Mas o filtro funciona SOMENTE para os campos nativos do Woocommerce. Os demais campos criados pelo plugin Extra Ckeckout Fields For Brazil são ignorados:
add_filter( 'woocommerce_billing_fields', 'filter_wc_billing_fields', 10, 1 );
function filter_wc_billing_fields( $fields ) {
if ( is_checkout() && is_user_logged_in() ) {
$keys_fields = ['billing_first_name', 'billing_last_name', 'billing_cpf', 'billing_rg', 'billing_birthdate', 'billing_sex_field', 'billing_email', 'billing_cellphone'];
foreach ( $keys_fields as $key ) {
if( ( $value = WC()->checkout->get_value($key) ) && ! empty( $value ) ) {
$fields[$key]['custom_attributes'] = ['readonly'=>'readonly'];
}
}
}
return $fields;
}
Já tentei mudar a prioridade, mas não resolveu. Alguém consegue me ajudar? Não sou programador :(