Решается задача следующим образом
в init.php всталвяем
// Исключаем поиск по описаниям
AddEventHandler("search", "BeforeIndex", array("SearchHandlers", "BeforeIndexHandler"));
class SearchHandlers
{
function BeforeIndexHandler($arFields)
{
if($arFields["MODULE_ID"] == "iblock")
{
if(array_key_exists("BODY", $arFields) && substr($arFields["ITEM_ID"], 0, 1) != "S") // Только для элементов
{
$arFields["BODY"] = "";
}
if (substr($arFields["ITEM_ID"], 0, 1) == "S") // Только для разделов
{
$arFields['TITLE'] = "";
$arFields["BODY"] = "";
$arFields['TAGS'] = "";
}
}
return $arFields;
}
}
После чего необходимо запустить переиндексацию в настройках-поиск-переиндексация. Данное событие запускается при переиндексировании каждого элемента. Мы убрали из поискового индекса описание, поэтому поиск теперь не будет проводится по описанию в любом компоненте поиска. У разделов мы исключили заголовок, теги и описание, чтобы они вообще не участвовали в поиске.