
Conditional Shipping & Payment Rules для WooCommerce — показ способов доставки и оплаты по условиям
Скрывайте или оставляйте только нужные способы доставки и оплаты по роли покупателя, куке сайта, городу, индексу, весу, сумме и составу корзины. Классический и блочный чекаут WooCommerce.
- Совместимость
- WordPress 5.6+ · WooCommerce 6.0+ (проверено на WP 7.1 / Woo 11.1) · PHP 7.4+ · HPOS · классический и блочный чекаут
- Лицензия
- один сайт, годовая
- Триал
- 7 дней, без карты, один на сайт
Что есть во Free,
а что даёт Pro
Бесплатная версия работает без ограничения по времени. Pro добавляет остальные функции из таблицы.
Как это выглядит
Главное о модуле
Как это выглядит для покупателя
Покупатель ничего особенного не видит — и в этом суть. Он просто получает более короткий и правильный список.
Что получает админ
Отдельная страница WooCommerce → Правила доставки и оплаты. Каждое правило — карточка: что сделать, с какими способами, при каких условиях.

Триал стартует, когда вы попросите
Свежая установка — бесплатная версия, ничего не включается само. Кнопка «Попробовать Pro 7 дней» → e-mail → ключ сразу в окне и письмом.

Один ключ — один сайт
Переносите магазин — отвяжите лицензию на старом домене и активируйте на новом сами. Если наш сервер недоступен, Pro работает ещё 14 дней. Для студий — ключи на 5, 25 сайтов или без ограничений.
Технические требования
WooCommerce 6.0+ с классическим или блочным чекаутом, совместимость с HPOS.
WordPress 5.6+ · PHP 7.4+
Работает с любыми способами доставки и оплаты, которые регистрируются штатно: единый тариф, самовывоз, бесплатная доставка, Новая Почта, Укрпочта, платёжные шлюзы.
Цену доставки плагин не меняет — он решает, какие способы показать. Цены остаются за WooCommerce и вашим плагином тарифов.
Проверено на WordPress 7.1 и WooCommerce 11.1 и 10.7: классический и блочный чекаут, гость и покупатель с аккаунтом, заказ до конца.
История версий
Бесплатная и Pro-версия больше не конфликтуют при одновременной установке, удаление одной копии не стирает правила.
Первый выпуск: правила «скрыть / оставить только» для способов доставки и оплаты; условия по роли, куке, стране, области, городу, индексу, сумме, весу, количеству, категории, товару, классу…
Вместе с Conditional Shipping & Payment Rules для WooCommerce покупают
4 модуля одним заказом — на 40% дешевле, чем по отдельности


Nova Poshta Premium — модуль Новая Почта для OpenCart 2.3, 3.x и 4.x

LiqPay — оплата картой для OpenCart 2.3, 3.x и 4.x

Telegram-уведомления и Viber/SMS покупателям для OpenCart
Полное описание модуля
Conditional Shipping & Payment Rules для WooCommerce — плагин, который показывает покупателю только те способы доставки и оплаты, которые ему действительно подходят. WooCommerce предлагает всё, что подходит к зоне доставки. Реальному магазину нужно меньше: без наложенного платежа для гостей, курьер только по одному городу, без самовывоза для тяжёлой корзины, отдельный набор для оптовиков, свой вариант для школы или дилера, пришедших по собственной ссылке.
Плагин превращает это в правила, которые легко прочитать: скрыть (или оставить только) эти способы доставки или эти способы оплаты, когда корзина и покупатель выглядят так.
Как это выглядит для покупателя
Покупатель ничего особенного не видит — и в этом суть. Он просто получает более короткий и правильный список. Сменил город — список доставки обновился без перезагрузки страницы. Выбрал курьера — исчез наложенный платёж. Выбрал наложенный платёж — исчез самовывоз, если вы так настроили.
- Гость и покупатель с аккаунтом видят разные наборы: например, наложенный платёж только для тех, кто уже покупал и имеет аккаунт.
- Школа, дилер, партнёр. Ваш сайт ставит куку, когда человек приходит по своей ссылке, — и на чекауте он видит только свой способ доставки. Именно с этого запроса плагин и начался.
- Скрытый способ не протолкнуть. Попытка оплатить скрытым способом через запрос в обход страницы на блочном чекауте возвращает ошибку, заказ не создаётся. На классическом WooCommerce отвечает «Неверный способ оплаты».
Что получает админ
Отдельная страница WooCommerce → Правила доставки и оплаты. Каждое правило — карточка: что сделать, с какими способами, при каких условиях.
- Два действия: «Скрыть» убирает выбранные способы, «Оставить только» убирает всё, кроме выбранных.
- Способ целиком или один экземпляр в зоне: можно скрыть «Единый тариф» во всех зонах или только в одной.
- Приоритет: правила выполняются от меньшего числа к большему, и каждое только сужает список. Более позднее правило не может вернуть то, что убрало предыдущее, — поведение легко предсказать.
- «Все условия» или «любое» — на выбор для каждого правила. Пустое условие не проверяется.
- Журнал: каждое решение пишется в WooCommerce → Статус → Журналы, так что видно, почему способ показался или нет.
- Ручные заказы в админке правила не трогают: менеджер видит все способы.
Как это работает — шаг за шагом
- Покупатель открывает корзину или чекаут. WooCommerce считает доступные способы доставки для его адреса.
- Плагин собирает снимок: роль, куки, которые читают ваши правила, адрес, вес, количество, сумма, категории и классы доставки товаров, выбранный способ оплаты или доставки, сегодняшняя дата в часовом поясе магазина.
- Правила проходят по приоритету. Каждое, чьи условия выполнились, скрывает свои способы или оставляет только их.
- Если после этого не осталось ни одного способа, а защита включена, покупатель получает полный список, а в журнал идёт предупреждение.
- Тот же результат получают классический чекаут и блочный чекаут через Store API.
- Покупатель меняет город, куку или способ — WooCommerce пересчитывает ставки, потому что плагин кладёт всё, что читают правила, в отпечаток пакета доставки. Старый список из кеша не «залипает».
Что под капотом
- Кеш ставок доставки. WooCommerce кеширует рассчитанные ставки в сессии по хешу пакета. Всё, что читают правила и чего в пакете нет (роль, куки, выбранный способ оплаты, дата, сами правила, состояние лицензии), плагин добавляет в пакет одним ключом. Кеш сбрасывается именно тогда, когда меняется ответ, — и не чаще. Именно здесь спотыкаются похожие плагины: покупатель изменил условие, а видит старый список.
- Блочный чекаут и оплата. В блочном чекауте список способов оплаты собирается в браузере, поэтому одного PHP-фильтра мало. Решение принимает PHP и передаёт его в корзину Store API, а скрипт плагина применяет его на странице.
- Перекрёстные условия «оплата под доставку» и «доставка под оплату» работают на обоих чекаутах; скрипты подключаются только тогда, когда такое правило действительно есть.
- Честный бесплатный уровень. Правило, опирающееся на Pro-условие, на Free не выполняется вообще, а не «без этого условия». Иначе «без курьера для Гамбурга» после конца триала стало бы «без курьера для всех».
- Ничего лишнего в базе: собственных таблиц нет, настройки и правила — две опции. Удаление плагина убирает всё за собой.
Как установить
- Плагины → Добавить новый → Загрузить плагин: выберите
conditional-shipping-and-payment-rules-for-woocommerce-1.0.1.zipи активируйте. - Откройте WooCommerce → Правила доставки и оплаты.
- Добавьте правило: «Скрыть» или «Оставить только», способы доставки или оплаты, условия. Включите и сохраните.
- Откройте чекаут в окне инкогнито (как гость) и с аккаунтом — проверьте, что список меняется так, как вы задумали.
- Для Pro: вставьте лицензионный ключ из письма после оплаты или запустите 7-дневный триал кнопкой на той же странице.
Вопросы
о модуле
Не нашли ответ? Напишите в Telegram — ответим в течение рабочего дня.
Правило сохранено, а способ всё ещё виден. Почему?
Правила работают только на витрине. Проверьте, что правило включено, что выбран именно тот способ, который предлагает зона, и что условия действительно подходят вашей тестовой корзине. Включите журнал в настройках: WooCommerce → Статус → Журналы, источник «ccsr» — там записано каждое решение.
Работает ли с блочным чекаутом?
Да. Способы доставки фильтруются на сервере, поэтому блочный чекаут получает тот же список. Способы оплаты тоже решает сервер, а блочный чекаут получает это решение через Store API. Попытку оплатить скрытым способом в обход страницы сервер отклоняет.
Я скрыл всё, и теперь никто не может заказать.
Защита «Никогда не оставлять оформление заказа совсем без методов» включена по умолчанию и возвращает полный список, если правила его опустошили. Если вы её выключили — включите снова.
Можно скрыть наложенный платёж только для одного города?
Да, в Pro: «Скрыть» → «способы оплаты» → выберите способ, затем заполните условие «Город». Добавьте страну, если такое название города есть где-то ещё.
Плагин меняет цену доставки?
Нет. Он решает, какие способы показать. Цены остаются за WooCommerce и вашим плагином тарифов.
Что будет, когда закончится триал?
Будет работать первое включённое правило с базовыми условиями. Правила с Pro-условиями сохраняются, но не выполняются, пока не включится лицензия: без своего условия такое правило скрывало бы больше, чем вы просили.
Пока нет ни одного отзыва. Будьте первым.
Пока вопросов нет. Спроси — мы ответим в течение 24 часов.
Не тот вариант, что искали?
Делаем кастомные модули под WordPress, WooCommerce, OpenCart и Shopify. Расскажите о задаче — подготовим оценку.
Заказать кастомный модуль
Покупка модуля
—