Magento2: Minicart está lleno mientras el carrito está vacío

12

Muchos de nuestros clientes se quejan de que agregan cosas al carrito y luego, cuando proceden al pago, son redirigidos a un carrito vacío.
Pensamos que podría ser el resultado de un tiempo de sesión demasiado corto, por lo que intentamos aumentar la vida útil de la cookie / sesión a 86400 (tanto en el administrador como en el servidor).
Después de eso, traté de reproducir el problema y logré lograr el comportamiento extraño como puede ver en la captura de pantalla adjunta.
Agregué productos al carrito, regresé después de unos 20-30 minutos y vi mis artículos en el minicart. luego procedí a pagar y me redirigió a este carrito vacío mientras el minicart todavía muestra mis artículos (la actualización de la página tampoco funcionó): ingrese la descripción de la imagen aquí

-- ¿Alguna idea?


ACTUALIZACIÓN: Hasta ahora logramos resolver este problema cambiando la configuración de la sesión para usar archivos (deshabilitado Memcached). Sé que Magento recomienda usar Memcached y no tengo idea de qué causó este problema ...

Pini
fuente

Respuestas:

2

app \ code \ Vendor \ Extension \ etc \ frontend \ section.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Customer:etc/sections.xsd">
    <action name="extension/controller/action">
        <section name="cart"/>
    </action>
</config>

En este nombre de parámetro de acción, debe pasar la acción completa (por ejemplo, pago / carrito / agregar) en la que se actualiza el carrito. Significa que elimina o agrega mediante programación un producto al carrito de compras.

Por último, comente a continuación si tiene algún problema al usar este código.

¡Feliz codificación!

Ingeniero de TI Yuvrajsinh
fuente
0

Magento coloca todos los datos específicos del cliente (carrito de compras, nombre del cliente, etc.) en el almacenamiento local para evitar el almacenamiento en caché de servidores proxy como Varnish. Más tarde, estos datos se insertan en la página utilizando JS. El comportamiento que observó es una configuración incorrecta de la vida útil de la caché. Idealmente, debería estar alineado con la duración de la sesión.

Andrey Konosov
fuente
Como dije, aumentamos tanto la sesión como la cookie a 86400, eso no ayudó. Lo único que parece solucionar el problema es deshabilitar el memcached (que se configuró como lo sugieren los documentos de Magento). Dejamos de revisar el problema después de eso, así que no tengo idea de qué lo causó realmente.
Pini