Телеграм: @bazarow_ru Почта: mihail@bazarow.ru

Очистка корзины в 1С-Битрикс одним нажатием

Просмотров: 29582

В стандартной корзине Битрикс не хватает кнопки для полной очистки корзины одним нажатием. Требуется это довольно редко, однако изредка все же необходимо добавить этот функционал. Расскажу как

Удалить все в корзине Битрикс

На одном из созданных сайтов, по производству и оптовой поставке железобетонных изделий, была замечена тенденция: достаточно часто изделия добавляются в заказу для расчета общего веса набранных товаров. После чего пользователь начинает удалять позиции корзины по одной, а "накидать" в заказ может и 30-50 позиций. Для заботы о посетителях решил добавить кнопку очистки корзины одним нажатием.

В файл /ВАШ_ШАБЛОН_КОРЗИНЫ/result_modifier.php добавляем:


<?
if ($_POST["BasketDelete"] and CModule::IncludeModule("sale"))
{ CSaleBasket::DeleteAll(CSaleBasket::GetBasketUserID());
} ?>

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


<form action="" method="POST">
  <input type="submit" value="Очистить корзину" name="BasketDelete">
</form>

И оформляем, как того требует дизайн вашего сайта.

Очистка корзины с помощью js

Более удобный и адекватный способ, сделать это с помощью js/jQuery. К тому же: произойдет без перезагрузки страницы и у пользователя останется шанс восстановить нужные ему позиции.

Очистка корзины битрикс одним нажатием

<script>
    $('.clear_cart').click(function () {
        $('.basket-item-actions-remove').click();
    });
</script>
<button class="clear_cart">Очистить</button>

Смысл в том, что при нажатии на кнопку с классом clear_cart мы иммитируем нажатие сразу на все кнопки удаления товара, которые есть в корзине. В типовом шаблоне корзины эта кнопка имеет класс basket-item-actions-remove, само собой если изменили ее - подставляйте свой класс.

Сам скрипт, можно закинуть в /ВАШ_ШАБЛОН_КОРЗИНЫ/script.js что бы не болтался прямо в шаблоне.

Виталий Кузьмин 24.07.2017
Добрый день, Михаил.

Такой вопрос, связанный с удалением из корзины.

Имеется товар  с торговыми предложениями:
<?echo $arOffer["ID"]?> - Отвечает за добавление выбранного торг. предложения в корзину.
А иначе есть код, который отвечает за удаление торг. предложения из корзины?
tos995 21.11.2017
можно узнать полный путь где лежит /php_intarface/init.php , а то я уже в шаблоне папку создал и поискал по всем папкам ( нашел - воткнул код) - не работает. =(
Михаил Базаров 21.11.2017
Цитата
tos995 написал:
init.php
Вот так поразвернутее будет ответ)
https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=43&LESSON_ID=2916
@stanislav_web 15.06.2022
Не забудьте обернуть input в form с методом POST:<form action="" method="POST">
   <input type="submit" value="Очистить корзину" name="BasketDelete">
</form>
Михаил Базаров 15.06.2022
Цитата
@stanislav_web написал:
Не забудьте обернуть input в form с методом POST:<form action="" method="POST">
   <input type="submit" value="Очистить корзину" name="BasketDelete">
</form>

Да, спасибо- добавил в заметку.
Константин 05.07.2022
Большое спасибо за Ваши решения!
Очень помогают!
Гость 30.12.2022
Добрый день. Подскажите пожалуйста, у меня не работает восстановление почему-то и вариант со скриптом вставляю в template, реакции ноль.  
Гость 30.12.2022
Цитата
Гость написал:
Добрый день. Подскажите пожалуйста, у меня не работает восстановление почему-то и вариант со скриптом вставляю в template, реакции ноль.
Хотя параметр SHOW_RESTORE выставлен в "Y"

Записная книжка разработчика

Примерно с 2013-го года пишу заметки по разработке сайтов на Битрикс.
Вы можете задавать уточняющие вопросы в комментариях- отвечаю или дополняю заметки по возможности.

Основные функции вывода в шаблонах Битрикс Просмотров: 158281 Знаю, что все их знают. Но иногда не бывает лишним собрать все самое используемое в одну к... Установка вебсервера на Apple M1 (нативный ARM стек), оптимизированны... Просмотров: 7404 Появилась задачка, установить стек MAMP (macOS, Apache, MYSQL, PHP) на рабочий ноутбук с п... Автоматическая загрузка каталогов из csv файлов в Битрикс Просмотров: 11797 Если требуется настроить автоматический импорт каталогов из csv файлов, от поставщиков. В... Старые шаблоны битрикс для простой верстки Просмотров: 18193 Новые версии типового интернет-магазина, который идет в комплекте с Битрикс (от 12 версии ... Создание блога с комментариями, оценками и просмотрами на сайте с 1С-... Просмотров: 24530 Если на вашем сайте требуется создание раздела с блогом или новостями, статьями. Записям в... Добавить свойство в административную форму заказа Просмотров: 3759 Задача, кастомизировать административную форму заказа: добавить свойство заказа в шапку фо... Отфильтровать новости в Битрикс за заданный период Просмотров: 16690 Иногда, нужно отфильтровать элементы (новости например) по дате в Битрикс, с помощью компо... Хостинг панель BrainyCp: оптимизация под 1С-битрикс Просмотров: 8131 В этой видео-заметке расскажу как установить и оптимизировать панель управления сервером B... Многосайтовость битрикс на разных доменах и поддоменах Просмотров: 63137 Часто спрашивают "как настроить многосайтовость Битрикс на разных доменах", решил записать... Валидация пароля и подтверждения при регистрации в битрикс Просмотров: 15267 Встала задачка сделать валидацию пароля и его подтверждения в стандартной форме регистраци... Оптимизация jpeg и png картинок на cron, с помощью jpegoptim и optipn... Просмотров: 2278 Задача: на сайт каждый день проходит выгрузка из 1С с обновлением картинок. Нужно оптимиз... Сравнение двух типов цен для иммитации системы скидок, в Битрикс Просмотров: 6819 Встала задачка, иммититровать систему скидок в интернет магазине на Битрикс. Из 1С-УТ, на ... Очистка корзины в 1С-Битрикс одним нажатием Просмотров: 29582 В стандартной корзине Битрикс не хватает кнопки для полной очистки корзины одним нажатием... Модифицировать состав заказа #ORDER_LIST# в почтовом событии "Новый з... Просмотров: 30308 Если вы хотите как-то по особенному сверстать состав заказа в почтовом уведомлении 1С-Битр... Создание раздела инфоблока при регистрации пользователя в Битрикс Просмотров: 8649 Например вам нужно выводить информацию исключительно для определенного пользователя. Само ... Базовая защита "Битрикс виртуальная машина" от DDoS атак. Просмотров: 5856 Данный способ защиты не панацея, и скорее всего не спасет от профессиональной DDoS атаки, ... Вывести минимальную и максимальную цену в разделе каталога Битрикс. Просмотров: 3663 Что бы вывести минимальную и максимальную стоимость товаров, из каталога 1С-Битрикс, доста... Подключение jquery из ядра битрикс и объединение своих скриптов в оди... Просмотров: 20891 Если используете большое количество js скриптов на сайте. Например: фансибокс, всяческие г... Заполнить коэффициент единицы измерения (MEASURE_RATIO) из свойства э... Просмотров: 6467 Задачка: Каталог наполняется из 1С, но 1С не передает коэффициент единицы измерения (особе... Получение местоположений через API Битрикс c поиском по select. Просмотров: 23192 Если нужно получить список городов из модуля "Местоположения" можно воспользоваться API Би...