En el siguiente tutorial vemos cómo añadir un campo adicional en el forumario de checkout de WooCommerce para evitar que los usuarios se confundan al poner el email.
La idea será que el usuario tenga que escribir dos veces su correo electrónico.
Vídeotutorial sobre cómo validar el email en WooCommerce
Código PHP necesario para añadir un segundo campo email en el checkout de WooCommerce:
add_filter( 'woocommerce_checkout_fields' , 'crea_nuevo_campo_validar_email' );
function crea_nuevo_campo_validar_email( $fields )
{
$fields['billing']['billing_email']['class'] = array( 'form-row-first' );
$fields['billing']['billing_email2_ver'] = array(
'label' => 'Escribe de nuevo tu email',
'required' => true,
'class' => array( 'form-row-last' ),
'clear' => true,
'priority' => 999,
);
return $fields;
}
add_action('woocommerce_checkout_process', 'validar_ambas_direcciones_de_correo');
function validar_ambas_direcciones_de_correo()
{
$email1 = $_POST['billing_email'];
$email2 = $_POST['billing_email2_ver'];
if ( $email2 !== $email1 )
{
wc_add_notice( 'Ambas direcciones de correo no coinciden', 'error' );
}
}