Обучаю битриксу программистов, интеграторов. Подробнee ⇒

Поиск в компоненте новости



Задача:
сортировать страницу с результатами: выводить сначала те, где в заголовках есть вхождение слова (без морфологии)
шаблон компонента search.page
result_modifier.php
<?phpif (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
if(!empty($arResult["REQUEST"]["QUERY"])&&!empty($arResult["SEARCH"])){

    $arWithTitle = [];
    $arWithoutTitle = [];
    $q = strtolower($arResult["REQUEST"]["QUERY"]);

    foreach($arResult["SEARCH"] as $arItem){
        $arWords = explode(" ",strtolower($arItem["TITLE"]));
        if(in_array($q,$arWords)){//query in title
            $arWithTitle[] = $arItem;
        }
        else{
            $arWithoutTitle[] = $arItem;
        }
    }
    $arResult["SEARCH"] = array_merge($arWithTitle,$arWithoutTitle);
}
?>
Если блог был полезным, можете угостить меня "чашечкой кофе" :)

Сбер по номеру телефона +7 (953) 585-13-09 Вероника.
Спасибо!