где-то встречал такой код:
Код |
---|
AddEventHandler("search", "BeforeIndex", Array("MyClass", "BeforeIndexHandler"));
class MyClass
{
// создаем обработчик события "BeforeIndex"
function BeforeIndexHandler($arFields)
{
// если нужный инфоблок и есть нужные данные, то выбираем производителя и добавляем его в поисковый индекс
if($arFields["MODULE_ID"] == "iblock" && $arFields["PARAM2"] == 18 && intval($arFields["ITEM_ID"]) > 0)
{
$search_res = CIBlockElement::GetList(
array("ID"=>"DESC"),
array("IBLOCK_ID" => $arFields["PARAM2"], "ID" => intval($arFields["ITEM_ID"])),
false,
array("nTopCount" => 1),
array("ID", "IBLOCK_ID", "PROPERTY_brand.NAME")
);
if($search_item = $search_res->GetNext())
$arFields["BODY"] .= " Производитель: ".$search_item["PROPERTY_BRAND_NAME"];
}
return $arFields;
}
} |
Не уверен, что это идеальное решение, но (вроде) работало :)