Проблема очищения корзины неавторизированных пользователей
Интересные моменты выяснились при создании интернет-магазина редакция Малый Бизнес. Рассмотрим проблему брошенных корзин в Битрикс. Самое интересное, что проблема существует уже несколько лет и толком не решается. В настройках модуля Интернет-магазин — Сохранять корзину (дней): стоит 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 день, но тут есть одно но. Это ручной способ. В идеале нужен автоматический сброс на агентах. Этот способ рассмотрим в статье по следующей проблематике очистки корзин зарегистрированных пользователей.
Ещё статьи:
20.09.2021
Разговор с рекрутером в 2021. Мидл это младший специалист и на удалёнку не ниже сеньёра
Рекрутер: В принципе ок, но обычно младших специалистов мы в офис берем). Что скажете?
П.С. Мда, интересно оказывается, что мидл это младший специалист,...
ID: 320
01.12.2020
Свершилось, битрикс перестал поддерживать mbstring.func_overload
Теперь для обновления на версию v20.100.0 требуется удаление опции mbstring.func_overload. Эта опция более не требуется и не поддерживается платформой...
ID: 313
13.08.2020
Получить id элемента привязки к пользователю битрикс
Получить id элемента, который добавлен в свойство привязки к пользователю битрикс
ID: 250
Новые статьи в блоге:
06.04.2022
Своё АПИ на сайте битрикс без модуля
Искал куда компонент спрятали и нашёл такую реализацию мини АПИ без модуля.
ID: 333
18.03.2022
Получение минимальной цены и сохранение в свойство
Пополнение - пример события OnPriceUpdate для получение минимальной цены и сохранения в свойство инфоблока.
ID: 332
12.02.2022
Проверка групп пользователя и исключение разделов
Пример события для проверки групп пользователя с целью исключить разделы из общего доступа
ID: 331