+7 495 008 8452 пн.-пт. 10:00 – 17:00
Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.


и в завершение темы, официальный ответ техподдержки, автор - Евгений Петриченко:

Стандартный компонент отображения элементов раздела не может осуществлять поиск по всему каталогу, т.к. он отображает именно элементы раздела. Для решения задачи Вам следует кастомизировать компонент.
Дело в том, что в компоненте, в методе CIBlockElement::GetList(), фильтр осуществляется по конкретной секции. Если секция не указана то выборка будет вестись из элементов корня инфоблока, игнорируя секции.
Т.е. в компоненте например bitrix:catalog.section нужно вообще исключить появление SECTION_ID в фильтре.

В файле /bitrix/components/bitrix/catalog.section/component.php
в строке 218 закомментировать:



>--------------- код -------------------
 $arFilter["SECTION_ID"] = $arResult["ID"];
>---------------------------------------



в строке 240 закомментировать:



>--------------- код -------------------
 $arItem["IBLOCK_SECTION_ID"] = $arParams["SECTION_ID"];
>---------------------------------------



Теперь компонент bitrix:catalog.section будет выводить все элементы инфоблока - соответственно поиск будет осуществляться по всему инфоблоку.

Предоставленный вариант кастомизации просто пример, как можно реализовать задачу. Для более сложно задачи нужно проводить дополнительный модификации компонента.

Перед кастомизацией не забудьте скопировать компонент с свою папку.

Назад в раздел

Подписаться на новые материалы раздела:












CAPTCHA