![Intensa: Расширение правил работы с корзиной](/upload/iblock/734/0r81c44lx1dcnlsc4txlg4wbel1mm9u0/intensa_restriction.png)
Intensa: Расширение правил работы с корзиной
от Intensa
Технические данные
Дата публикации:
04.07.2024
Версия:
1.0.0
Адаптивность:
Нет
Поддержка композита:
Нет
Число установок:
Менее 50 раз
Описание
Модуль добавляет дополнительные условия для правил работ с корзиной.После установки будут добавлены следующие условия:
- Результат вызова callback-функции — предназначен для указания функции. В параметре функции будет передан массив данных по заказу\корзине.
- PHP выражение — позволяет задать произвольный PHP-код.
- День рождения пользователя — позволяет задать скидку в день рождения пользователя. Также можно указать, чтобы скидка начала действовать немного заранее, до начала дня рождения, и закончилась позже.
- По времени — позволяет задать скидку, которая будет действительна только в заданный период времени в течение дня.
- Время с даты регистрации пользователя — проверка на количество времени, прошедшего со дня регистрации пользователя.
- Время с даты оформления последнего заказа — проверка на заданное количество времени, прошедшего с даты оформления последнего заказа.
- Количество заказов — проверка на общее количество оформленных, но не отмененных заказов пользователя.
- Количество оплаченных заказов — проверка на количество выкупленных заказов (проверка флага оплачен и не отменен).
Скачайте и установите модуль.
После установки модуля для правил работы с корзиной будут добавлены новые дополнительные условия:
![](https://partners.1c-bitrix.ru/upload/update/932/kqfim6zvime8acb9bbbsghlaz037b0fk/open_select.png)
Все условия предназначены для повышения лояльности ваших клиентов.
Результат вызова callback-функции — выводит поле для ввода, где следует указать функцию или метод класса.
![](https://partners.1c-bitrix.ru/upload/update/8df/uzc2tu88f1j6vdxbnjukcn4u2jhiyhld/callback.png)
В параметре функции будет передан массив данных по заказу\корзине. Примерный вид такого массива следующий:
В функции можно реализовать, к примеру, скидку по местоположению. Выглядеть может так (ваш вариант, конечно, будет лучше):
Результат выполнения функции должен быть булевым значением (true\false).
PHP-выражение — выводит поле для ввода простенького PHP-выражения или функции. При указании функции в нее не будут передаваться параметры, в отличие от предыдущего параметра.
![](https://partners.1c-bitrix.ru/upload/update/330/vre34dewg49e0n35hyoqazdu04ijiw72/php_excpression.png)
Результат выполнения кода должен быть булевым значением (true\false).
День рождения пользователя — позволяет задать скидку в день рождения пользователя. Также можно указать, чтобы скидка начала действовать немного раньше и закончилась позже. Чтобы скидка действовала только в день рождения, следует указать 0. Все мы любим получать подарки, а дарить их еще приятнее.
![](https://partners.1c-bitrix.ru/upload/update/2dd/covbx5s10l572bpyd02xyi8y3fijov9g/birthday.png)
По времени — позволяет задать скидку, которая будет действительна только в заданный период времени в течение дня. Получаем возможность задать ночную скидку. Поощрим, кто не спит у вас на сайте?
![](https://partners.1c-bitrix.ru/upload/update/a78/jxpr4cu4gs5qlc1woegvxqh673u86xib/period_time.png)
Количество заказов — проверка на общее количество оформленных, но не отмененных заказов пользователя. Клиент стесняется оформить заказ, возможно, он ждет скидку?
![](https://partners.1c-bitrix.ru/upload/update/1da/w5aswpbdbf4ujvl97unybtva495rcxkp/count_order.png)
Количество оплаченных заказов — проверка на количество оплаченных заказов (проверка флага оплачен и не отменен). Может пора особенно наградить постоянных покупателей?
![](https://partners.1c-bitrix.ru/upload/update/1d8/vv1jppbtvujlnvkm6jm82jsrgj9yodrh/count_pay_order.png)
Время с даты регистрации пользователя — проверка на количество времени, прошедшего со дня регистрации пользователя. У вас новый клиент? Или хотите поощрить того, с кем только начинали свой путь? Тогда это именно то, что нужно.
![](https://partners.1c-bitrix.ru/upload/update/9bd/f7yz6zw9fiyti3dc8jblwwfqewjwoaqy/day_from_register.png)
Время с даты оформления последнего заказа — проверка на заданное количество времени, прошедшего с даты оформления последнего заказа. Пора напомнить о себе клиенту, что есть место, где его ждут.
![](https://partners.1c-bitrix.ru/upload/update/493/eb5cjt4mw0g1o87jxblq6ug0t3t7iv9i/day_last_order.png)
Учтите!
После установки модуля для правил работы с корзиной будут добавлены новые дополнительные условия:
![](https://partners.1c-bitrix.ru/upload/update/932/kqfim6zvime8acb9bbbsghlaz037b0fk/open_select.png)
Все условия предназначены для повышения лояльности ваших клиентов.
Результат вызова callback-функции — выводит поле для ввода, где следует указать функцию или метод класса.
![](https://partners.1c-bitrix.ru/upload/update/8df/uzc2tu88f1j6vdxbnjukcn4u2jhiyhld/callback.png)
В параметре функции будет передан массив данных по заказу\корзине. Примерный вид такого массива следующий:
array ( 'ID' => 0, 'USER_ID' => '1', 'USER_GROUPS' => [...], 'SITE_ID' => 's1', 'LID' => 's1', 'ORDER_PRICE' => 8393.0, 'ORDER_WEIGHT' => 0.0, 'CURRENCY' => 'RUB', 'PERSON_TYPE_ID' => 1, 'BASKET_ITEMS' => [...], 'ORDER_PROP' => [...], 'DELIVERY_LOCATION' => '0000073738', 'DELIVERY_LOCATION_ZIP' => '101000', 'BASE_PRICE_DELIVERY' => 0, 'PRICE_DELIVERY' => 0, 'PRICE_DELIVERY_DIFF' => 0, 'DELIVERY_ID' => 0, 'SHIPMENT_ID' => 0, 'PAY_SYSTEM_ID' => 0 ) |
function checkDiscountByOrder($arOrder) { if (!is_array($arOrder)) { return false; } if (!\Bitrix\Main\Loader::includeModule('sale')) { return false; } $orderPropLocation = 6; // ID свойства заказа местоположения $locationCode = $arOrder['ORDER_PROP'][$orderPropLocation]; // Текущее значение местоположения $moscowAreaCode = ['0000073738', '0000028025']; // Код города Москва и московская область $iterator = \Bitrix\Sale\Location\LocationTable::getList([ 'filter' => ['=CODE' => $moscowAreaCode], 'select' => ['CODE', 'LEFT_MARGIN', 'RIGHT_MARGIN'] ]); while ($area = $iterator->fetch()) { $res = \Bitrix\Sale\Location\LocationTable::getList([ 'filter' => [ '=CODE' => $locationCode, '>=LEFT_MARGIN' => $area['LEFT_MARGIN'], '<=RIGHT_MARGIN' => $area['RIGHT_MARGIN'] ], 'select' => ['CODE', 'LEFT_MARGIN', 'RIGHT_MARGIN'], 'limit' => 1 ]); if ($res->fetch()) { return true; } } return false; } |
PHP-выражение — выводит поле для ввода простенького PHP-выражения или функции. При указании функции в нее не будут передаваться параметры, в отличие от предыдущего параметра.
![](https://partners.1c-bitrix.ru/upload/update/330/vre34dewg49e0n35hyoqazdu04ijiw72/php_excpression.png)
Результат выполнения кода должен быть булевым значением (true\false).
День рождения пользователя — позволяет задать скидку в день рождения пользователя. Также можно указать, чтобы скидка начала действовать немного раньше и закончилась позже. Чтобы скидка действовала только в день рождения, следует указать 0. Все мы любим получать подарки, а дарить их еще приятнее.
![](https://partners.1c-bitrix.ru/upload/update/2dd/covbx5s10l572bpyd02xyi8y3fijov9g/birthday.png)
По времени — позволяет задать скидку, которая будет действительна только в заданный период времени в течение дня. Получаем возможность задать ночную скидку. Поощрим, кто не спит у вас на сайте?
![](https://partners.1c-bitrix.ru/upload/update/a78/jxpr4cu4gs5qlc1woegvxqh673u86xib/period_time.png)
Количество заказов — проверка на общее количество оформленных, но не отмененных заказов пользователя. Клиент стесняется оформить заказ, возможно, он ждет скидку?
![](https://partners.1c-bitrix.ru/upload/update/1da/w5aswpbdbf4ujvl97unybtva495rcxkp/count_order.png)
Количество оплаченных заказов — проверка на количество оплаченных заказов (проверка флага оплачен и не отменен). Может пора особенно наградить постоянных покупателей?
![](https://partners.1c-bitrix.ru/upload/update/1d8/vv1jppbtvujlnvkm6jm82jsrgj9yodrh/count_pay_order.png)
Время с даты регистрации пользователя — проверка на количество времени, прошедшего со дня регистрации пользователя. У вас новый клиент? Или хотите поощрить того, с кем только начинали свой путь? Тогда это именно то, что нужно.
![](https://partners.1c-bitrix.ru/upload/update/9bd/f7yz6zw9fiyti3dc8jblwwfqewjwoaqy/day_from_register.png)
Время с даты оформления последнего заказа — проверка на заданное количество времени, прошедшего с даты оформления последнего заказа. Пора напомнить о себе клиенту, что есть место, где его ждут.
![](https://partners.1c-bitrix.ru/upload/update/493/eb5cjt4mw0g1o87jxblq6ug0t3t7iv9i/day_last_order.png)
Учтите!
Модуль не проверяет, авторизован ли пользователь или это анонимный пользователь. Это следует ограничивать на другой вкладке через группы пользователей при создании правила работы с корзиной.
Удачного пользования! Станьте ближе для покупателя используя функционал модуля.
Поддержка (вопросы, ошибки, идеи) осуществляется по электронной почте support24@intensa.ru
Режим работы: 09:00-18:00 по московскому времени.
Время реакции на обращение: 48 часов.
Выходные дни: суббота и воскресенье.
Режим работы: 09:00-18:00 по московскому времени.
Время реакции на обращение: 48 часов.
Выходные дни: суббота и воскресенье.
Установите этот модуль прямо сейчас!
Для этого укажите адрес сайта:
пример: https://www.site.ru
![Intensa: Расширение правил работы с корзиной](/upload/iblock/734/0r81c44lx1dcnlsc4txlg4wbel1mm9u0/intensa_restriction.png)
Intensa: Расширение правил работы с корзиной
6 000 руб