Hola, tenemos un inconveniente en https://www.babybluebread.com/ cuando con cliente realiza el proceso de compra y finaliza el pago, si nuevamente quiere hacer otra compra, le aparecen los mismos productos de la compra anterior, por mas que los elimina y vuelve a refrescar el navegador, persisten en aparecer, como se puede solucionar este inconveniente?
gracias
Contenido solo visible a usuarios registrados
Hola Fabian,
Esto tiene que ver con la cache, es posible que estés guardando demasiado la cache, trata lo siguiente, agrega un código personalizado con el plugin de wp code:
https://es.wordpress.org/plugins/insert-headers-and-footers
Luego agrega este codigo:
// Vacía carrito y también el "carrito persistente" cuando el pedido se completa.
add_action( 'woocommerce_thankyou', function( $order_id ){
if ( ! $order_id ) return;
// Vaciar carrito de la sesión actual (por si el thankyou no lo hizo ya)
if ( WC()->cart ) {
WC()->cart->empty_cart();
}
// Si el comprador estaba logueado, eliminar su carrito persistente
$order = wc_get_order( $order_id );
if ( $order ) {
$user_id = $order->get_user_id();
if ( $user_id ) {
delete_user_meta( $user_id, '_woocommerce_persistent_cart_' . get_current_blog_id() );
}
}
}, 20 );
Ten en cuenta que a veces esto pasa por tener plugins desactualizados. Verifica con esto y ya nos comentas luego.
Un saludo 🖐️
Hola Fabian,
Una forma de controlarlo sería justamente instalando un plugin de caché para que se vacíe periódicamente, prueba también con este código:
add_filter('woocommerce_persistent_cart_enabled', '__return_false');
Este lo vas a agregar de la misma forma que el anterior, para que no tengas que estar editando el archivo functions.
Prueba primero con este y ya nos comentas.
Un saludo 🖐️