Введение
В версии ядра 26.650.0 для «коробочной» версии Битрикс24 появился новый метод \CUserCounter::clearLiveFeedCodes(). Он предназначен для массовой очистки счетчиков живой ленты (Live Feed) и упрощает операцию, которая раньше требовала вызова CUserCounter::Clear() для каждого пользователя отдельно.
Назначение и область применения
Метод решает задачу массового сброса счетчиков в следующих сценариях:
- Массовое обновление записей ленты, когда требуется синхронизировать состояние счетчиков у всех сотрудников
- Сброс устаревших уведомлений после выполнения массовых операций с контентом
- Использование в пользовательских скриптах и обработчиках событий для управления состоянием ленты
Синтаксис
Метод имеет следующую сигнатуру:
phppublic static function clearLiveFeedCodes(array $userIds = []): void
Параметры
Параметр $userIds (массив идентификаторов пользователей)
Необязательный параметр. Представляет собой массив целочисленных идентификаторов пользователей, для которых необходимо очистить счетчики ленты.
- Если параметр не передан или передан пустой массив — счетчики сбрасываются для всех пользователей системы
- Если передан массив с идентификаторами — очистка выполняется только для указанных пользователей
Возвращаемое значение
Метод не возвращает значение (void).
Примеры использования
Пример 1. Очистка счетчиков для всех пользователей
php// Подключаем модуль main if (\Bitrix\Main\Loader::includeModule('main')) { \CUserCounter::clearLiveFeedCodes(); }
Пример 2. Очистка счетчиков для конкретных пользователей
php// Подключаем модуль main if (\Bitrix\Main\Loader::includeModule('main')) { // Очищаем счетчики для пользователей с ID 1, 2 и 3 \CUserCounter::clearLiveFeedCodes([1, 2, 3]); }
Отличие от CUserCounter::Clear
В отличие от метода CUserCounter::Clear(), который очищает счетчик по конкретному коду для одного пользователя [citation:1], новый метод clearLiveFeedCodes предназначен специально для массовой работы со счётчиками ленты и обрабатывает сразу всех или указанных пользователей одной командой.
Особенности и рекомендации
-
Обязательное подключение модуля: Перед вызовом метода необходимо подключить модуль
mainчерезCModule::IncludeModule('main')или\Bitrix\Main\Loader::includeModule('main'). -
Версия ядра: Метод доступен начиная с версии ядра 26.650.0. При использовании в проектах с более старой версией необходимо проверить наличие метода через
method_existsили обновить ядро. -
Специализация метода: Метод предназначен исключительно для очистки счетчиков живой ленты. Для работы с другими типами счетчиков используется
CUserCounter::Clear()[citation:1]. -
Производительность: Массовая очистка выполняется оптимизированно, без необходимости перебора пользователей в цикле с вызовом
Clear()для каждого.
Заключение
\CUserCounter::clearLiveFeedCodes() — это специализированный инструмент для массовой очистки счетчиков живой ленты, появившийся в версии ядра 26.650.0. Он упрощает сценарии, где требуется сбросить счетчики у всех или нескольких пользователей, избавляя разработчика от необходимости писать циклы с вызовом CUserCounter::Clear() для каждого пользователя.
