Avisos
Vaciar todo

[Resuelto] Mensaje de error en checkout  

 
Tomás
 Tomás
Reputable Member

Hola a todos, mi web hace una cosa rara. Cuando estás en el checkout y terminas de rellenar los datos de compra si introduces una dirección de email que ya está registrada te sale un mensaje de error haciendo un scroll hacia arriba diciendo que ya hay una cuenta registrada......, por favor accede.

Hasta hay todo bien. Lo que ocurre es que la parte que te dice en el mensaje de error por favor accede, es un enlace que debería abrirse para que introduzcas los datos, pero dicho enlace cuando le haces clic ni se inmuta. Esto le ha pasado siempre y no sé como abordarlo.

¿Me podéis echar una mano?

Gracias de antemano.

Ahí lleváis la captura para que se comprenda mejor.

Por favor, accede

 

Contenido solo visible a usuarios registrados

Respondido : 12/11/2023 10:59 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Tomas.

Esto sucede porque el comportamiento predeterminado del proceso de validación de pago de WooCommerce verificará la dirección de correo electrónico ingresada por el usuario. Si esa dirección de correo electrónico coincide con un usuario registrado de WordPress existente, entonces WooCommerce no procesa el pedido hasta que el usuario inicie sesión.

Prueba  añadir lo siguiente al final del archivo functions.php o si utilizas algun plugin paar añadir código como puede ser Code Snippets:

add_filter( 'woocommerce_checkout_posted_data', 'we_filter_checkout_posted_data', 10, 1 );
function we_filter_checkout_posted_data( $data ) {

$email = $data['billing_email'];

if ( email_exists( $email ) ) $data['createaccount'] = 0;

return $data;

}

 

Este código utiliza el filtro WooCommerce  woocommerce_checkout_posted_data para interceptar los datos del formulario de pago después de hacer clic en el botón Realizar el pedido, pero antes de que los datos se procesen.

Primero comprobará si el usuario ha iniciado sesión. Si es así, no necesitamos hacer nada.

Sin embargo, si el usuario no ha iniciado sesión, comprueba si existe una cuenta de WordPress que coincida con la dirección de correo electrónico. Si hay una cuenta existente, este código configura el usuario actual de WP para que coincida con el de la dirección de correo electrónico de facturación.

 

Espero que esto solucione el problema que estás teniendo, de no ser así por favor indícalo para que podamos seguir revisando que puede estar pasando.

 

Un saludo

 

 

Respondido : 12/11/2023 1:09 pm

Tomás
 Tomás
Reputable Member

@pepesoler

Gracias Pepe, con ese código directamente ya no sale el menaje de error.

 

De verdad, muchas gracias, eres muy grande!!

Respondido : 12/11/2023 4:00 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Tomás.

Nada, como siempre un placer poder orientarlos en lo que nos sea posible.

Cualquier consulta que tengas no dudes en comunicarlo.

 

Un saludo 

Respondido : 12/11/2023 4:23 pm

Cursos Gratuitos WordPress