WooCommerce: как убрать промежуточную корзину и сразу вести на оформление заказа

Сценарий знакомый: товар добавляется в корзину, но покупатель дальше видит отдельную страницу корзины, хотя по логике магазина ему нужен сразу checkout. Это особенно заметно на простых товарах, цифровых продуктах и лендингах с одним основным оффером. В WooCommerce это решается, но не одним универсальным переключателем: важно понимать, где именно стоит редирект, как он влияет на мини-корзину, купоны и сценарии с несколькими товарами.

Когда проблема действительно в промежуточной корзине

Сначала стоит отделить лишнюю страницу корзины от нормального поведения магазина. Если у вас покупатель после добавления товара уходит на /cart/, а дальше вручную переходит на /checkout/, это и есть тот случай, который можно упростить. Но если корзина нужна для:

  • выбора вариаций и количества перед оплатой;
  • применения купонов;
  • добавления нескольких товаров;
  • проверки доставки и налогов до оплаты;

то полный отказ от корзины может ухудшить конверсию, а не улучшить ее.

Диагностика: где именно происходит лишний переход

Проверьте три точки:

  1. Настройки WooCommerce: включен ли обычный checkout и не переопределен ли URL корзины темой или плагином.
  2. Шаблон темы: не вставлен ли кастомный редирект после добавления товара.
  3. Плагины ускорения/UX: некоторые из них меняют поведение кнопки add to cart и отправляют пользователя на корзину.

Если после отключения всех сторонних плагинов редирект остается, почти наверняка он задан в коде темы или в дочерней теме.

Как убрать корзину и отправлять покупателя сразу на checkout

Самый практичный вариант — оставить саму корзину в WooCommerce, но после добавления товара перенаправлять пользователя сразу на страницу оформления заказа. Это не ломает внутреннюю логику магазина и обычно проще в поддержке, чем полностью скрывать корзину.

Способ через хук WooCommerce

Добавьте код в functions.php дочерней темы или в собственный мини-плагин:

add_filter( 'woocommerce_add_to_cart_redirect', 'wp7_redirect_to_checkout_after_add_to_cart' );
function wp7_redirect_to_checkout_after_add_to_cart( $url ) {
    return wc_get_checkout_url();
}

Что делает этот код: после добавления товара WooCommerce отправляет пользователя на страницу оформления заказа вместо корзины. Это работает для стандартной кнопки add to cart в большинстве типовых сценариев.

Если нужно убрать ссылку на корзину из меню и мини-корзины

Редирект сам по себе не убирает все точки входа. Пользователь все еще может попасть на корзину через меню, виджет или кнопку в теме. Если задача — именно убрать промежуточный шаг, проверьте:

  • меню сайта: нет ли пункта «Корзина»;
  • хедер темы: не выводится ли иконка корзины;
  • мини-корзина: не ведет ли она на страницу cart;
  • страница магазина: не показывает ли тема отдельную кнопку перехода в корзину.

В некоторых темах достаточно отключить вывод корзины в настройках. Если нет — правьте шаблон темы, а не только редирект.

Сравнение подходов: плагин, код, компромисс

ПодходКогда подходитПлюсыМинусы
Код через хукНужен точечный редирект после add to cartПрозрачно, без лишних зависимостейНужно проверять тему и сторонние плагины
Плагин для редиректаНет доступа к коду или нужен быстрый тестМожно включить/выключить без разработкиЛишняя зависимость, возможны конфликты
Оставить корзину, но упростить путьНужны купоны, несколько товаров, доставкаМеньше риска сломать сценарии оплатыКорзина остается как промежуточный шаг

Если у вас магазин на готовой теме и нужен не только редирект, но и чистка лишних элементов интерфейса, иногда проще использовать набор настроек в плагине оптимизации вроде Clearfy Pro. Но сам редирект лучше держать в коде — так проще контролировать поведение.

Пошаговая настройка без лишних сюрпризов

Шаг 1. Сделайте резервную копию

Перед изменениями сохраните бэкап файлов темы и базы. Если редирект уже где-то есть, вы сможете быстро откатиться и сравнить поведение.

Шаг 2. Добавьте редирект в дочернюю тему

Не правьте родительскую тему напрямую. После обновления изменения пропадут. Лучше использовать дочернюю тему или отдельный мини-плагин.

Шаг 3. Проверьте, не конфликтует ли AJAX-добавление в корзину

Если кнопка add to cart работает через AJAX, редирект может не сработать на некоторых шаблонах каталога. Тогда нужно смотреть, как тема обрабатывает событие добавления товара, и не отключен ли стандартный переход WooCommerce.

Шаг 4. Убедитесь, что checkout доступен для гостя

Если оформление заказа доступно только авторизованным пользователям, редирект на checkout может привести не к оплате, а к странице входа. Это нормальная логика, но ее нужно учитывать заранее.

Проверка результата после внедрения

После изменения не ограничивайтесь визуальной проверкой. Пройдитесь по реальному сценарию:

  1. Откройте карточку простого товара.
  2. Нажмите «Добавить в корзину».
  3. Проверьте, что вы попали на /checkout/, а не на /cart/.
  4. Убедитесь, что товар уже есть в заказе и количество отображается корректно.
  5. Попробуйте применить купон, если он используется в магазине.
  6. Проверьте оплату тестовым способом, если он подключен.

Если у вас включен кэш страниц, очистите кэш после изменения. Иначе вы можете видеть старую версию корзины или старый маршрут редиректа.

Что смотреть в браузере и в WooCommerce

  • URL после добавления товара;
  • нет ли циклического перехода между cart и checkout;
  • сохраняется ли товар в сессии WooCommerce;
  • не сбрасывается ли купон после редиректа;
  • нет ли ошибок JavaScript в консоли, если тема использует AJAX.

Частые ошибки и как их исправить

Редирект не срабатывает

Причина обычно в том, что тема или плагин перехватывает кнопку добавления в корзину своим JavaScript. Проверьте, не отключен ли стандартный механизм WooCommerce, и временно переключитесь на базовую тему для теста.

Покупатель попадает на checkout, но товар не добавлен

Так бывает при конфликте с кэшем, AJAX или кастомной кнопкой. Сначала проверьте, добавляется ли товар в корзину без редиректа. Если нет, проблема не в фильтре woocommerce_add_to_cart_redirect, а в самом сценарии добавления.

Сломались купоны или доставка

Это не ошибка редиректа как такового, а следствие того, что вы убрали промежуточный шаг, на котором пользователь привык делать дополнительные действия. Если купоны важны, оставьте корзину для части товаров или покажите купон прямо на checkout.

Появился цикл редиректов

Обычно это происходит, когда в теме уже есть собственный код, который отправляет пользователя на корзину после добавления товара, а вы сверху добавили редирект на checkout. Уберите дублирующую логику и оставьте один источник правды.

Безопасность и производительность: что не стоит игнорировать

Любой код для WooCommerce лучше держать в дочерней теме или в отдельном плагине, а не в functions.php основной темы. Так вы не потеряете изменения после обновления.

Если используете плагин для редиректа, проверьте, что он не добавляет лишние запросы и не конфликтует с кэшем. Для магазинов с высокой нагрузкой лишняя логика на каждом добавлении товара — это не то место, где стоит раздувать стек.

И еще момент: если вы убираете корзину полностью, не забудьте про доступность. Пользователь должен понимать, куда он попал после клика, и иметь возможность вернуться к товару без лишних действий.

Когда лучше не убирать корзину совсем

Если магазин работает с несколькими позициями в заказе, сложной доставкой, подбором комплектов или B2B-сценариями, промежуточная корзина часто полезна. В таких случаях лучше не вырезать ее полностью, а сократить путь: убрать лишние элементы, сделать checkout заметнее, оптимизировать форму и оставить корзину как рабочий экран, а не как тупик.

Если нужен именно быстрый путь к оплате, редирект на checkout — нормальное решение. Если же у вас много дополнительных действий перед оплатой, лучше не ломать привычный сценарий покупателя ради формального сокращения одного клика.

Как сделать динамические заголовки H1 в WordPress для улучшения SEO
24.01.2026
WordPress: как создать собственный виджет с примером кода
27.11.2025
Как создать автоматический импорт контента из внешних источников в WordPress
04.04.2026
WooCommerce: запрет покупки товара для неавторизованных пользователей
13.05.2026
WooCommerce: как удалить кнопку корзины с сайта без плагинов
06.05.2026