inavo
@inavo

Почему может не работать BeforeIndex?

Повесил хендлер BeforeIndex, он срабатывает, но на странице поиска в arResult TEST отсутствует. Проверка элементарная. Переиндексацию выполнял.
Что может быть не так?

EventManager::getInstance()->addEventHandler(
    'search',  'BeforeIndex',
    [
        Search::class,
        'BeforeIndexHandler'
    ]);

class Search {
    public static function BeforeIndexHandler($arFields)
    {
        $arFields['TEST'] = 'test';
        return $arFields;
    }
}
  • Вопрос задан
  • 274 просмотра
Решения вопроса 1
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
но на странице поиска в arResult TEST отсутствует
его там и не должно быть.
https://dev.1c-bitrix.ru/api_help/search/events/be...

Параметр        Описание
MODULE_ID       идентификатор модуля (не изменится);
ITEM_ID         идентификатор элемента (не изменится);
PARAM1          первый параметр элемента;
PARAM2          второй параметр элемента;
DATE_FROM       дата начала активности элемента;
DATE_TO         дата окончания активности элемента;
TITLE           заголовок;
BODY            содержание;
TAGS            теги элемента;
SITE_ID         массив сайтов;
PERMISSIONS     массив идентификаторов групп пользователей которым разрешено чтение;
URL             адрес относительно корня сайта, по которому доступен данный элемент;


Данный обработчик может модифицировать поля параметра arFields и должен вернуть его как результат своей работы.

Посмотрите таблицу b_search_content
/bitrix/admin/perfmon_table.php?lang=ru&table_name=b_search_content
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы