Скрытие отдельных способов оплаты и доставки при заданных условиях

Создавайте собственные правила фильтрации способов доставки и оплаты для разных витрин, заказов и групп клиентов.

28 февраля 2017, версия 1.1.2


Плагин «Фильтр доставки и оплаты» позволяет расширить стандартные настройки Shop-Script и Webasyst, позволяющие предлагать покупателям интернет-магазина способы доставки и оплаты в зависимости от конкретного заказа. Стандартные настройки позволяют предлагать способы оплаты в зависимости от выбранного способа доставки, а некоторые способы доставки (например, «Курьер»), предлагаются только тем покупателям, которые указали в своем адресе соответствующие значения региона и города. Если вам слишком мало таких базовых настроек, устанавливайте плагин и устанавливайте свои собственные правила.

Для настройки правил фильтрации переходим в раздел бекенда магазина «Плагины → Фильтр доставки и оплаты» и щелкаем по кнопке «Создать фильтр».

Для фильтра можно ввести необязательные название и описание, но необходимо также сделать самое главное:

  1. Создать условия для срабатывания фильтра.
  2. Выбрать способы доставки и оплаты, которые необходимо скрыть при срабатывании этих условий.

Создание условий фильтра

Условия можно составлять на основании следующих значений:

— Категория
— Категория и ее подкатегории
— Список товаров
— Тип товаров
— Товар
— Характеристики товара
— Услуги
— Общее количество всех товаров
— Количество товара
— Количество товара из категории
— Количество товара из категории и ее подкатегорий
— Количество товаров с характеристиками
— Количество уникальных товаров
— Общая стоимость заказа с учетом скидок
— Общая стоимость всех товаров
— Общая стоимость товаров из категории
— Общая стоимость товаров из категории и ее подкатегорий
— Общая стоимость всех товаров с характеристиками
— Сумма значений характеристик товаров
— Цена любого товара
— Цена каждого товара
— Категория пользователя
— Пользователь
— Дата создания
— Общая сумма всех заказов
— Сумма заказов за период...
— Количество всех заказов
— Количество заказов за период...
— Заказы содержат товар
— Заказы содержат товар за период...
— Заказы содержат товар из категории
— Заказы содержат товар из категории и ее подкатегорий
— Заказы содержат товар из категории за период...
— Заказы содержат товар из категории и ее подкатегорий за период...
— Дата
— День недели
— Время
— Cookie
— Session
— $_GET
— $_POST
— Витрина

Для каждого условия доступен подходящий для него набор операторов сравнения: «равно», «не равно», «больше», «меньше», «содержит», «не содержит», «начинается с». При выборе оператора нужно иметь в виду, что <> обозначает «не равно» (такое обозначение используется в языке выполнения запросов к базе данных SQL). После выбора оператора сравнения нужно выбрать значение, с которым нужно сравнивать предмет условия: товар, категорию, характеристику, вес, сумму, витрину и т. п.

При использовании в условиях характеристик, использующих единицы измерения (например, «см», «л», «кг») выбор единицы не предлагается, поэтому остается неопределенность в отношении того, как будет учитываться значение характеристики товара при проверке срабатывания условия.

Для каждого фильтра можно добавить любое количество условий и для них выбрать: должны ли быть удовлетворены все условия фильтра (условие «И») или любые из них (условие «ИЛИ»).

Для более сложной настройки есть возможность добавлять группы условий. Это может быть удобно для того, чтобы внутри группы выполнялись все условия (оператор группировки условий «И»), а фильтр срабатывал бы при полном соблюдении любой группы условий (оператор группировки условий «ИЛИ»), но необязательно при соблюдении всех условий всех групп.

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

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

Выбор способов доставки и оплаты

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

Добавление вызовов плагина в шаблоны темы дизайна

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

Итоги

Интерфейс настроек плагина оформлен приятно и принципиальных сомнений или неудобств при редактировании фильтров не вызывает. Единственное, что нужно хорошо осознавать — это логику объединения нескольких условий и групп условий, а именно разницу между операторами «И»/«ИЛИ». Возможно, поначалу придется немного попрактиковаться и проверить работу простых условий, после чего можно приступать к созданию более сложных настроек. Плагин «Фильтр доставки и оплаты» производит впечатление тщательно продуманного и добротно оформленного программного продукта от опытного разработчика — рекомендуем.

* * *

«Фильтр доставки и оплаты» в Магазине Webasyst: https://www.webasyst.ru/store/plugin/shop/delpayfilter/