Количество результатов в поиске по новостям (Битрикс)
Инструкция5 мин 39 Обновлено 22 июля Сложность: Базовая
TL;DR
- Число результатов поиска задаёт параметр PAGE_RESULT_COUNT.
- Он передаётся вложенному bitrix:search.page в файле search.php шаблона «Новостей».
- Шаблон копируйте в /local/, а не правьте в /bitrix/.
- В настройках bitrix:news должно быть включено «Разрешить поиск».
- После правки сбросьте кэш компонента.
Комплексный компонент bitrix:news умеет искать по своим новостям, если включён параметр «Разрешить поиск». Внутри он подключает компонент поиска bitrix:search.page, а тот отдаёт результаты постранично. По умолчанию на странице результатов выводится фиксированное число совпадений – и это число можно изменить. Приём рабочий и в 2026 году.
Где лежит нужный шаблон
За страницу результатов поиска внутри «Новостей» отвечает файл search.php в шаблоне комплексного компонента. Копируйте его в свою тему, а не правьте в ядре:
/local/templates/ВАШ_ШАБЛОН/components/bitrix/news/ИМЯ_ШАБЛОНА/search.php
Если у вас пока нет своей копии шаблона bitrix:news, скопируйте его целиком из /bitrix/components/bitrix/news/templates/.default/. Правка файлов прямо в /bitrix/ недопустима – обновление ядра их затрёт.
Меняем количество результатов
Внутри search.php вызывается вложенный компонент bitrix:search.page. Ему передаётся параметр PAGE_RESULT_COUNT – число результатов на странице. Задайте нужное значение:
$APPLICATION->IncludeComponent(
"bitrix:search.page",
"",
[
// ... остальные параметры ...
"PAGE_RESULT_COUNT" => "3", // сколько результатов выводить на странице
// ...
],
$component
);
Вместо 3 подставьте нужное число. Именно этот параметр отвечает за размер страницы выдачи и за то, после какого количества результатов появится постраничная навигация.
Почему меняем в шаблоне, а не в настройках
У комплексного компонента bitrix:news нет отдельной галочки «сколько результатов поиска показывать» в визуальных настройках – это внутренний параметр вложенного search.page. Поэтому значение задаётся в коде шаблона search.php. Отсюда и правило: держите свою копию шаблона в /local/, чтобы правка пережила обновления.
Частые нюансы
- «Разрешить поиск» должно быть включено. Если в настройках
bitrix:newsпоиск выключен, файлsearch.phpпросто не задействуется. - Индексация поиска. Поиск работает по поисковому индексу модуля
search. Если новостей в выдаче меньше ожидаемого – проверьте, переиндексирован ли инфоблок (Настройки → Поиск → Переиндексация). - Кэш компонента. После правки
search.phpсбросьте кэш компонента (или весь кэш сайта), иначе изменение может не примениться сразу. - Не путать с длиной анонса.
PAGE_RESULT_COUNTзадаёт количество результатов, а не длину текста каждого – за обрезку отвечают другие параметры.
Смежные задачи по «Новостям» и подсчёту: как вывести количество элементов в разделе, как посчитать все элементы инфоблока и как вывести детальное описание в анонсе.
Частые вопросы
Каким параметром меняется число результатов поиска по новостям?
Параметром PAGE_RESULT_COUNT вложенного компонента bitrix:search.page. Его значение задаётся в файле search.php шаблона комплексного компонента bitrix:news – например "PAGE_RESULT_COUNT" => "3".
Где находится файл search.php?
В шаблоне компонента «Новости»: /local/templates/ВАШ_ШАБЛОН/components/bitrix/news/ИМЯ_ШАБЛОНА/search.php. Если своей копии нет, скопируйте шаблон из /bitrix/components/bitrix/news/templates/.default/.
Почему нельзя задать число результатов в настройках компонента?
У комплексного bitrix:news нет отдельной визуальной настройки для размера поисковой выдачи – это внутренний параметр вложенного search.page, поэтому его меняют в коде шаблона search.php.
Изменение не применилось – что проверить?
Проверьте, что включено «Разрешить поиск», сброшен кэш компонента, а инфоблок переиндексирован в модуле поиска (Настройки → Поиск → Переиндексация).
Материалы по теме
Что почитать дальше по этой теме