/**
* Событие "BeforeIndex" вызывается перед индексацией элемента функцией CSearch::Index.
* @param array $arFields
*/
public static function BeforeIndexHandler($arFields)
{
// тут в массиве список инфоблоков, для которых нужно искать еще и по символьному коду
if ($arFields["MODULE_ID"] == "iblock" && in_array($arFields["PARAM2"], array(2, 14, 19, 55))) {
if (array_key_exists("BODY", $arFields)) {
CModule::IncludeModule('iblock');
$rs = CIBlockElement::GetByID( intval($arFields['ITEM_ID']) );
if ($ar = $rs->Fetch()) {
$arFields["PARAMS"]['CODE'] = $ar['CODE'];
$arFields["BODY"] = 'Код: ' . $ar['CODE'] . ' ' . $arFields["BODY"];
}
}
}
return $arFields;
} |