Если корзина WooCommerce не работает, пользователь может нажимать «В корзину» без результата, видеть неверный счётчик или терять товары при переходе.
Для магазина это критичная ошибка: каталог выглядит исправно, но покупатель не доходит до оплаты.
Как проявляется проблема
- кнопка ничего не делает
- счётчик не обновляется
- корзина очищается
- на мобильном поведение другое
- ошибка только у гостей
Основные причины
1. Кешируется динамика
Cart, checkout и account нельзя отдавать как одинаковый HTML всем пользователям.
2. Cookies или сессии
WooCommerce использует cookie и серверную сессию для корзины.
3. Сломан AJAX
Ошибка JS или блокировка Store API мешает обновлению состояния.
4. Конфликт темы
Кастомная мини-корзина использует устаревший обработчик.
5. Delay/defer JS
Оптимизация нарушает порядок скриптов WooCommerce.
Пошаговая диагностика
Шаг 1. Проверить DevTools
Console и Network покажут JS error или запрос 4xx/5xx.
Шаг 2. Проверить без кеша
Исключите cart, checkout, my-account и WooCommerce cookies.
Шаг 3. Проверить инкогнито
Так отделяются старые cookies и admin-сессия.
Шаг 4. Отключить JS-оптимизацию
На staging уберите delay/defer/minify и сравните.
Шаг 5. Проверить стандартную тему
Если проблема исчезла, ищите override или JS темы.
Как исправить
Настроить bypass кеша
Динамические страницы и cookies должны обходить page cache.
Исправить JS-конфликт
Найдите конкретный скрипт вместо отключения AJAX целиком.
Обновить шаблоны WooCommerce
Старые overrides темы часто ломают корзину после обновления.
Что важно не делать
- Не меняйте сразу несколько настроек: после каждого действия проверяйте результат.
- Перед правками файлов и базы сделайте резервную копию.
- Не отключайте защиту, кеш или обновления навсегда только ради временного обхода ошибки.
- На интернет-магазине проверяйте решение не только под администратором, но и как обычный посетитель.
Когда нужна помощь разработчика
Если проблема повторяется, затрагивает продажи, заявки или индексацию, сохраните время ошибки и журналы сервера. Это позволяет найти первопричину вместо временного обхода.
Нужна диагностика? Можно обратиться за технической поддержкой WooCommerce.
Связанные статьи
Часто задаваемые вопросы
Почему работает после F5?
Чаще всего не выполняется AJAX-обновление fragments.
Может Cloudflare ломать корзину?
Да, если персональный HTML кешируется без правильных bypass rules.
Почему только у гостей?
Для авторизованных пользователей часто действует другой режим кеша и другие cookies.