Поправить код по исключению разделов из быстрого поиска битрикс

300 руб. за проект
15 апреля 2024, 15:00 • 6 откликов • 42 просмотра
Поправить код.

Этот код в init.php должен исключать указанные разделы и товары (в том числе предложения этих товаров) из быстрого поиска битрикс (search.title). Но не исключает.


AddEventHandler("search", "BeforeIndex", "BeforeIndexHandler", 10);
function BeforeIndexHandler($arFields)
{
$clearIndex = 0;
if($arFields["MODULE_ID"] == 'iblock' && $arFields["TITLE"] != '' && IntVal($arFields["ITEM_ID"]))
{
if(CModule::IncludeModule("iblock")){
$res = CIBlockElement::GetList(Array(), array("ID"=>$arFields["ITEM_ID"]),
false, false, array("ID", "NAME", "IBLOCK_SECTION_ID","SECTION_ID"));
while($fields = $res->Fetch())
{
if($fields["IBLOCK_SECTION_ID"] == '262' || $fields["IBLOCK_SECTION_ID"] == '263' ||
$fields["IBLOCK_SECTION_ID"] == '264'){
$clearIndex = 1;
}
}
}
}
if($clearIndex)
{
$arFields["TITLE"] = '';
$arFields["BODY"] = '';
$arFields["TAGS"] = '';
}
return $arFields;
}