Intensa: Расширение правил работы с корзиной

0

Разработчик: Intensa

Установлено: Менее 50

Обновлено: 17.06.2024

Адаптирован под мобильные устройства

Совместим с редакциями Битрикс: «Малый бизнес» / «Бизнес»

6 000 ₽
Модуль добавляет дополнительные условия для правил работ с корзиной.

После установки будут добавлены следующие условия:
  • Результат вызова callback-функции — предназначен для указания функции. В параметре функции будет передан массив данных по заказу\корзине.
  • PHP выражение — позволяет задать произвольный PHP-код.
  • День рождения пользователя — позволяет задать скидку в день рождения пользователя. Также можно указать, чтобы скидка начала действовать немного заранее, до начала дня рождения, и закончилась позже.
  • По времени — позволяет задать скидку, которая будет действительна только в заданный период времени в течение дня.
  • Время с даты регистрации пользователя — проверка на количество времени, прошедшего со дня регистрации пользователя.
  • Время с даты оформления последнего заказа — проверка на заданное количество времени, прошедшего с даты оформления последнего заказа.
  • Количество заказов — проверка на общее количество оформленных, но не отмененных заказов пользователя.
  • Количество оплаченных заказов — проверка на количество выкупленных заказов (проверка флага оплачен и не отменен).
Скачайте и установите модуль.<br /><br />После установки модуля для правил работы с корзиной будут добавлены новые дополнительные условия:<br /><br /><img src="https://partners.1c-bitrix.ru/upload/update/932/kqfim6zvime8acb9bbbsghlaz037b0fk/open_select.png" border="0" width="655" height="351" data-bx-image="https://partners.1c-bitrix.ru/upload/update/932/kqfim6zvime8acb9bbbsghlaz037b0fk/open_select.png" data-bx-onload="Y" /><br /><br />Все условия предназначены для повышения лояльности ваших клиентов.<br /><br /><b>Результат вызова callback-функции</b> — выводит поле для ввода, где следует указать функцию или метод класса.<br /><img src="https://partners.1c-bitrix.ru/upload/update/8df/uzc2tu88f1j6vdxbnjukcn4u2jhiyhld/callback.png" border="0" width="800" height="377" data-bx-image="https://partners.1c-bitrix.ru/upload/update/8df/uzc2tu88f1j6vdxbnjukcn4u2jhiyhld/callback.png" data-bx-onload="Y" /><br />В параметре функции будет передан массив данных по заказу\корзине. Примерный вид такого массива следующий:<div class="blog-post-code" title="Код"><table class="blogcode"><tr><td><pre>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 ) </pre></td></tr></table></div>В функции можно реализовать, к примеру, скидку по местоположению. Выглядеть может так (ваш вариант, конечно, будет лучше):<div class="blog-post-code" title="Код"><table class="blogcode"><tr><td><pre>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; } </pre></td></tr></table></div>Результат выполнения функции должен быть булевым значением (true\false).<br /><br /><b>PHP-выражение</b> — выводит поле для ввода простенького PHP-выражения или функции. При указании функции в нее не будут передаваться параметры, в отличие от предыдущего параметра.<br /><img src="https://partners.1c-bitrix.ru/upload/update/330/vre34dewg49e0n35hyoqazdu04ijiw72/php_excpression.png" border="0" width="800" height="374" data-bx-image="https://partners.1c-bitrix.ru/upload/update/330/vre34dewg49e0n35hyoqazdu04ijiw72/php_excpression.png" data-bx-onload="Y" /><br />Результат выполнения кода должен быть булевым значением (true\false).<br /><br /><b>День рождения пользователя </b>— позволяет задать скидку в день рождения пользователя. Также можно указать, чтобы скидка начала действовать немного раньше и закончилась позже. Чтобы скидка действовала только в день рождения, следует указать 0. Все мы любим получать подарки, а дарить их еще приятнее.<br /><img src="https://partners.1c-bitrix.ru/upload/update/2dd/covbx5s10l572bpyd02xyi8y3fijov9g/birthday.png" border="0" width="800" height="468" data-bx-image="https://partners.1c-bitrix.ru/upload/update/2dd/covbx5s10l572bpyd02xyi8y3fijov9g/birthday.png" data-bx-onload="Y" /><br /><br /><b>По времени</b> — позволяет задать скидку, которая будет действительна только в заданный период времени в течение дня. Получаем возможность задать ночную скидку. Поощрим, кто не спит у вас на сайте?<br /><img src="https://partners.1c-bitrix.ru/upload/update/a78/jxpr4cu4gs5qlc1woegvxqh673u86xib/period_time.png" border="0" width="800" height="466" data-bx-image="https://partners.1c-bitrix.ru/upload/update/a78/jxpr4cu4gs5qlc1woegvxqh673u86xib/period_time.png" data-bx-onload="Y" /><br /><br /><b>Количество заказов</b> — проверка на общее количество оформленных, но не отмененных заказов пользователя. Клиент стесняется оформить заказ, возможно, он ждет скидку?<br /><img src="https://partners.1c-bitrix.ru/upload/update/1da/w5aswpbdbf4ujvl97unybtva495rcxkp/count_order.png" border="0" width="800" height="367" data-bx-image="https://partners.1c-bitrix.ru/upload/update/1da/w5aswpbdbf4ujvl97unybtva495rcxkp/count_order.png" data-bx-onload="Y" /><br /><br /><b>Количество оплаченных заказов</b> — проверка на количество оплаченных заказов (проверка флага оплачен и не отменен). Может пора особенно наградить постоянных покупателей?<br /><img src="https://partners.1c-bitrix.ru/upload/update/1d8/vv1jppbtvujlnvkm6jm82jsrgj9yodrh/count_pay_order.png" border="0" width="800" height="445" data-bx-image="https://partners.1c-bitrix.ru/upload/update/1d8/vv1jppbtvujlnvkm6jm82jsrgj9yodrh/count_pay_order.png" data-bx-onload="Y" /><br /><br /><b>Время с даты регистрации пользователя</b> — проверка на количество времени, прошедшего со дня регистрации пользователя. У вас новый клиент? Или хотите поощрить того, с кем только начинали свой путь? Тогда это именно то, что нужно.<br /><img src="https://partners.1c-bitrix.ru/upload/update/9bd/f7yz6zw9fiyti3dc8jblwwfqewjwoaqy/day_from_register.png" border="0" width="800" height="467" data-bx-image="https://partners.1c-bitrix.ru/upload/update/9bd/f7yz6zw9fiyti3dc8jblwwfqewjwoaqy/day_from_register.png" data-bx-onload="Y" /><br /><br /><b>Время с даты оформления последнего заказа</b> — проверка на заданное количество времени, прошедшего с даты оформления последнего заказа. Пора напомнить о себе клиенту, что есть место, где его ждут.<br /><img src="https://partners.1c-bitrix.ru/upload/update/493/eb5cjt4mw0g1o87jxblq6ug0t3t7iv9i/day_last_order.png" border="0" width="800" height="369" data-bx-image="https://partners.1c-bitrix.ru/upload/update/493/eb5cjt4mw0g1o87jxblq6ug0t3t7iv9i/day_last_order.png" data-bx-onload="Y" /><br /><br /><b>Учтите!</b><p>Модуль не проверяет, авторизован ли пользователь или это анонимный пользователь. Это следует ограничивать на другой вкладке через группы пользователей при создании правила работы с корзиной.</p><p><i>Удачного пользования! Станьте ближе для покупателя используя функционал модуля.</i></p>
Поддержка (вопросы, ошибки, идеи) осуществляется по электронной почте <a href="mailto:support24@intensa.ru" target="_blank" >support24@intensa.ru</a><br /><br />Режим работы: 09:00-18:00 по московскому времени.<br />Время реакции на обращение: 48 часов.<br />Выходные дни: суббота и воскресенье.