AJAX-корзина сокращает паузу между выбором товара и продолжением покупки: товар добавляется из каталога, кнопка превращается в управление количеством, а mini-cart и итог обновляются без полной перезагрузки.
Что должно обновляться вместе
- строка товара и доступный остаток;
- счётчик и содержимое mini-cart;
- subtotal, скидки, доставка и итог;
- состояние кнопки в других карточках того же товара;
- события аналитики после подтверждённого ответа сервера.
Типовые ошибки
Частые причины дублей — несколько быстрых кликов, повторно подключённый обработчик и отсутствие блокировки запроса. Debounce полезен для количества, но сервер всё равно должен проверять nonce, товар, вариацию и допустимый остаток.
Для вариативного товара сначала нужно однозначно выбрать комбинацию. Если размер или цвет не выбран, интерфейс должен объяснить, чего не хватает, а не отправлять неполный запрос.
Проверка перед запуском
- простые, вариативные, распродажные и отсутствующие товары;
- гость и авторизованный клиент;
- купоны, минимальная сумма и бесплатная доставка;
- десктоп и мобильный экран;
- page cache, object cache и сторонняя mini-cart.
Проектируемое решение собрано на странице PluginStore AJAX Cart for WooCommerce. Если выбор размеров остаётся неудобным, дополните сценарий вариациями-кнопками.

