Бывает ситуация, когда пользователь добавил товары в корзину, но по какой-то причине не оформил заказ. При этом корзина никуда не девается и продолжает висеть на сайте. В настройках можно задать время хранения брошенных корзин, но почему-то настройка не работает. Остается один выход - программное удаление брошенных корзин.
Скрипт удаления брошенных корзин можно реализовать через ajax либо создать какой-нибудь файл php и в него внести такой код:
И конечно не забудьте в самом начале файла подключить пролог, иначе ничего не сработает. Далее, вводим адрес созданного файла в адресной строке и проверяем отсутствие брошенных корзин в админке по пути Админка - Магазин - Покупатели - Корзины.
А теперь все по порядку. Чтобы сделать выборку корзин, нужно обязательно подключить модуль торговый каталог (catalog) и модуль интернет-магазин (sale). Далее выбираем брошенные корзины - это корзины, которые не привязаны к заказу, т.е. в фильтре значение ORDER_ID устанавливаем в NULL. В выборке мы должны получить ID пользователей, которые создали брошенные корзины - это параметр FUSER_ID. Значение параметра FUSER_ID не всегда совпадает с ID пользователя на сайте. А именно, если в корзину товары добавлял авторизованный пользователь, то FUSER_ID = USER_ID (ID пользователя в системе). В противном случае в FUSER_ID попадает ID неавторизованного покупателя, который Битрикс генерирует автоматически.
И наконец в цикле while мы пробегаем по всем таким покупателям и удаляем корзины, которые к ним привязаны с помощью метода DeleteAll класса CSaleBasket модуля интернет-магазин.
241027,
Россия,
Брянская область,
поселок Путевка,
улица Рослальская, дом 8, кв.121
Бывает ситуация, когда пользователь добавил товары в корзину, но по какой-то причине не оформил заказ. При этом корзина никуда не девается и продолжает висеть на сайте. В настройках можно задать время хранения брошенных корзин, но почему-то настройка не работает. Остается один выход - программное удаление брошенных корзин.
Скрипт удаления брошенных корзин можно реализовать через ajax либо создать какой-нибудь файл php и в него внести такой код:
И конечно не забудьте в самом начале файла подключить пролог, иначе ничего не сработает. Далее, вводим адрес созданного файла в адресной строке и проверяем отсутствие брошенных корзин в админке по пути Админка - Магазин - Покупатели - Корзины.
А теперь все по порядку. Чтобы сделать выборку корзин, нужно обязательно подключить модуль торговый каталог (catalog) и модуль интернет-магазин (sale). Далее выбираем брошенные корзины - это корзины, которые не привязаны к заказу, т.е. в фильтре значение ORDER_ID устанавливаем в NULL. В выборке мы должны получить ID пользователей, которые создали брошенные корзины - это параметр FUSER_ID. Значение параметра FUSER_ID не всегда совпадает с ID пользователя на сайте. А именно, если в корзину товары добавлял авторизованный пользователь, то FUSER_ID = USER_ID (ID пользователя в системе). В противном случае в FUSER_ID попадает ID неавторизованного покупателя, который Битрикс генерирует автоматически.
И наконец в цикле while мы пробегаем по всем таким покупателям и удаляем корзины, которые к ним привязаны с помощью метода DeleteAll класса CSaleBasket модуля интернет-магазин.
Из коробки 1С-Битрикс идет функционал установки водяного знака на превью и детальное изображение товара. Но как быть, если водяной знак нужно установить на дополнительные фотографии, которые отображаются в слайдере товара, т.е. картинки из свойства типа ФАЙЛ?