Минимальная сумма заказа в корзине Битрикс
Казалось бы такая простая и нужная настройка должна по умолчанию находиться в настройках интернет-магазина, но к сожалению, в Битриксе её, по каким-то причинам нет. Хотя во многих CMS, в том числе и бесплатных, такая настройка идет, что называется, “из коробки”.
Но не спешите расстраивать, сделать это не сложно и справится с этой задачей сможет даже самый неопытный пользователь. Следуйте этой простой инструкции и у вас всё получится!
Приступим:
Шаг 1. Определяем используемый шаблон корзины
Если вы точно знаете какой шаблон корзины вы используете, то переходите сразу к шагу 3. Чтобы узнать какой шаблон вы используете, вам необходимо зайти в административную часть сайта и включить редактирование в правом верхнем углу.
Добавим любой товар в корзину и перейдем в неё по значку корзины, кнопке “перейти в корзину” или по адресу /personal/cart/
Наведем на список товаров и нажимаем на “шестеренку” как показано на скриншоте:
Откроются параметры компонента корзины и в самом первой строке вы увидите название своего шаблона:
Шаг 2. Далее мы советуем воспользоваться FTP клиентом и дальнейшее редактирование проводить в нём, а не использовать встроенный редактор Битрикса, т.к. при малейшей ошибке, чтобы восстановить работу сайту всё равно придется прибегать к FTP клиенту или файловому менеджеру в панели хостинга.
Через FTP-клиент открываем папку с вашим шаблоном корзины. Обычно она находится по адресу
/bitrix/components/bitrix/sale.basket.basket/templates/Название_Вашего_Шаблона/
или
/local/templates/components/bitrix/sale.basket.basket/Название_Вашего_Шаблона/
Адреса могут незначительно отличаться, важно чтобы совпало sale.basket.baske и название вашего шаблона из шага 1.
Шаг 3. В папке вашего шаблона находим и открываем файл mutator.php
Находим в нём следующий код:
$totalData = array(
'DISABLE_CHECKOUT' => (int)$result['ORDERABLE_BASKET_ITEMS_COUNT'] === 0,
'PRICE' => $result['allSum'],
'PRICE_FORMATED' => $result['allSum_FORMATED'],
'PRICE_WITHOUT_DISCOUNT_FORMATED' => $result['PRICE_WITHOUT_DISCOUNT'],
'CURRENCY' => $result['CURRENCY']
);
Этот код делает кнопку “Оформить заказ” неактивной, а так же формируем сумму заказа, которая как раз нам и нужна. Сразу после этого кода (после закрывающейся скобочки и знака точки с запятой) вставляем вот такой небольшой код:
if ($result['allSum'] < 999) {
$totalData ['DISABLE_CHECKOUT'] = 1;
}
Где вместо 999 вы можете указать нужную вам минимальную сумму для заказа. И сохраняете файл. В конечном итоге у вас должно получиться вот так:
Шаг 4. Наша техническая часть готова, но нам ещё нужно предупредить пользователя о необходимой минимальной суммы для заказа, чтобы у него не возникало лишних вопросов. Для этого в той же папке нашего шаблона открываем файл template.php
Находим строчку
<div id="basket-root" class="bx-basket bx-<?=$arParams['TEMPLATE_THEME']?> bx-step-opacity" style="opacity: 0;">
и после неё вставляем наше сообщение следующем кодом:
<p style="color: red">Минимальная сумма заказа 999 руб.</p>
Ваш код будет выглядеть так:
А пользователь увидит это сообщение в самом начале странице с корзиной:
Делитесь результатом в комментариях!
Но не спешите расстраивать, сделать это не сложно и справится с этой задачей сможет даже самый неопытный пользователь. Следуйте этой простой инструкции и у вас всё получится!
Приступим:
Шаг 1. Определяем используемый шаблон корзины
Если вы точно знаете какой шаблон корзины вы используете, то переходите сразу к шагу 3. Чтобы узнать какой шаблон вы используете, вам необходимо зайти в административную часть сайта и включить редактирование в правом верхнем углу.
Добавим любой товар в корзину и перейдем в неё по значку корзины, кнопке “перейти в корзину” или по адресу /personal/cart/
Наведем на список товаров и нажимаем на “шестеренку” как показано на скриншоте:
Откроются параметры компонента корзины и в самом первой строке вы увидите название своего шаблона:
Шаг 2. Далее мы советуем воспользоваться FTP клиентом и дальнейшее редактирование проводить в нём, а не использовать встроенный редактор Битрикса, т.к. при малейшей ошибке, чтобы восстановить работу сайту всё равно придется прибегать к FTP клиенту или файловому менеджеру в панели хостинга.
Через FTP-клиент открываем папку с вашим шаблоном корзины. Обычно она находится по адресу
/bitrix/components/bitrix/sale.basket.basket/templates/Название_Вашего_Шаблона/
или
/local/templates/components/bitrix/sale.basket.basket/Название_Вашего_Шаблона/
Адреса могут незначительно отличаться, важно чтобы совпало sale.basket.baske и название вашего шаблона из шага 1.
Шаг 3. В папке вашего шаблона находим и открываем файл mutator.php
Находим в нём следующий код:
$totalData = array(
'DISABLE_CHECKOUT' => (int)$result['ORDERABLE_BASKET_ITEMS_COUNT'] === 0,
'PRICE' => $result['allSum'],
'PRICE_FORMATED' => $result['allSum_FORMATED'],
'PRICE_WITHOUT_DISCOUNT_FORMATED' => $result['PRICE_WITHOUT_DISCOUNT'],
'CURRENCY' => $result['CURRENCY']
);
Этот код делает кнопку “Оформить заказ” неактивной, а так же формируем сумму заказа, которая как раз нам и нужна. Сразу после этого кода (после закрывающейся скобочки и знака точки с запятой) вставляем вот такой небольшой код:
if ($result['allSum'] < 999) {
$totalData ['DISABLE_CHECKOUT'] = 1;
}
Где вместо 999 вы можете указать нужную вам минимальную сумму для заказа. И сохраняете файл. В конечном итоге у вас должно получиться вот так:
Шаг 4. Наша техническая часть готова, но нам ещё нужно предупредить пользователя о необходимой минимальной суммы для заказа, чтобы у него не возникало лишних вопросов. Для этого в той же папке нашего шаблона открываем файл template.php
Находим строчку
<div id="basket-root" class="bx-basket bx-<?=$arParams['TEMPLATE_THEME']?> bx-step-opacity" style="opacity: 0;">
и после неё вставляем наше сообщение следующем кодом:
<p style="color: red">Минимальная сумма заказа 999 руб.</p>
Ваш код будет выглядеть так:
А пользователь увидит это сообщение в самом начале странице с корзиной:
Делитесь результатом в комментариях!
💬 Комментарии 0