Проблема очищения корзины неавторизированных пользователей

Проблема очищения корзины неавторизированных пользователей

03.03.2016

Интересные моменты выяснились при создании интернет-магазина редакция Малый Бизнес. Рассмотрим проблему брошенных корзин в Битрикс. Самое интересное, что проблема существует уже несколько лет и толком не решается. В настройках модуля Интернет-магазин — Сохранять корзину (дней): стоит 30 дней, потом поставил 0 дней, 1 день, убрал и оставил пустое значение, но если зайти на сайт неавторизированным пользователем и на странице каталога выбрать товар, а потом через некоторое время зайти на сайт заново и выбрать второй товар, то на странице оформления и в корзине тоже будут висеть все товары, которые ранее были выбраны и не оформлены.
Настройка «Сохранять корзину (дней):» применяется только для корзины незарегистрированных пользователей. Но по факту эта настройка не работает. Что может быть не так?
С точки зрения Битрикс если стоит 0 дней — это значит, что нет ограничения по количеству дней хранения.
Если поставить 1 день, тогда через 24 часа у всех неавторизированных пользователей теоретически сбросятся корзины. Но практически это будет только для тех, кто не заходил на сайт более 24 часов. Если заходил, то дата его корзины обновляется текущей.

Способы сброса корзин:

Если в командной строке:
http://ваш сайт/bitrix/admin/php_command_line.php?lang=ru
несколько раз выполнять код:
set_time_limit(0);
CModule::IncludeModule(«sale»);
for($i=0; $i<100; $i++)
echo CSaleUser::DeleteOldAgent(30, 0);

то постепенно старые корзины удалятся и останутся только корзины добавленные менее 30 дней назад.
За одно выполнение функции CSaleUser::DeleteOldAgent(30, 0); удаляется 300 записей из таблицы b_sale_fuser.

Я ставил значение 1 день, но тут есть одно но. Это ручной способ. В идеале нужен автоматический сброс на агентах. Этот способ рассмотрим в статье по следующей проблематике очистки корзин зарегистрированных пользователей.


Ещё статьи:

13.08.2020 Получить id элемента привязки к пользователю битрикс
Получить id элемента, который добавлен в свойство привязки к пользователю битрикс ID: 250

22.06.2020 Дубли внешнего кода не грузятся при импорте Битрикс
При копировании штатными средствами элементов (кнопка копировать) обнаружил такой момент, что при XML экспорте и последующим XML импорте не вс... ID: 243

17.06.2020 Журнал отправки почты на сайте Битрикс
В Битриксе есть инструменты для получения данных отправки почты на сайте. Рассмотрим, что в итоге есть. ID: 242

Новые статьи в блоге:

20.08.2020 Недокументированная связка ElementTable и getEntity
С помощью ElementTable::getEntity создаем объект Query. В качестве параметра он принимает объект сущности, относительно которой мы строим запрос испол... ID: 254

19.08.2020 Миф о сложности поиска специалиста Битрикс
Существует миф о сложности поиска специалиста Битрикс. Но как выясняется проблема поиска специалиста касается любой системы, фреймворков. Цитата: В св... ID: 253

15.08.2020 Получить ID раздела по пользовательскому полю
Как получить ID раздела по пользовательскому полю другого раздела ID: 252

Возврат к списку

© 2015-2020 Web админ
Связаться по WhatsApp