Применение умного фильтра для разделов каталога, в компоненте catalog.section.list

Внимание! Все сообщения на форуме проходят модерацию. Ваше сообщение появится после проверки.
Применение умного фильтра для разделов каталога, в компоненте catalog.section.list

Задача: В каталоге выводится умный фильтр, нужно сделать так чтобы он применялся не
только к товарам но и к компоненту "Список разделов" (catalog.section.list),
что бы оставались только подразделы в которых содержатся найденные товары.
Михаил, это полезная заметка, но не стоит изобретать велосипед с квадратными колесами.
Я долго пытался решить такую задачу и для выбора технических параметров оборудования подошел готовый компонент "Разделы с top'ом элементов"  - bitrix:catalog.sections.top.
Будет выводится:
Раздел1
Подраздел 1.1.
Товар 1.1.1, Товар 1.1.2
Раздел1
Подраздел 1.2.
Товар 1.2.1, Товар 1.2.2
......
и т.д.
Настроить (условия) при желании вывод только последнего подраздела

С включенным AJAX - вообще красота
Не знаю почему этот компонент не нашел широкого применения в массах битриксойдов.
Да, этот компонент не плох, но задача заметки была немного в другом  :)
..... немного в другом....
та же задача, не вижу разницы
Есть материал для видеороликов, куда отправить?
P.S. быстро кастомизмровать стандартные компоненты битрикс
Цитата
Vlad написал:
..... немного в другом....
та же задача, не вижу разницы
Есть материал для видеороликов, куда отправить?
P.S. быстро кастомизмровать стандартные компоненты битрикс

Задача была именно отфильтровывать разделы умным фильтром,
но показывать их над товарами в рамках section.php,
а не рубрикатором как в bitrix:catalog.sections.top

Можно на почту: mihail@bazarow.ru
Интересный функционал, но совсем не понятно куда этот код вставлять. Можно по пунктам на примере "Современный интернет магазин" . По Вашим инструкциям делал фильтр для мобильных. Там всё получилось. Спасибо.
Сомневаюсь, что смогу еще подробнее расписать  :)
По сути работаем с вызовом компонента catalog.section.list и модифицируем его через result_modifier.php
В типовом шаблоне магазина - все ровно тоже самое проделываем.
Можно добавить в getList параметр arGroupBy по "IBLOCK_SECTION_ID", ни на что не влияет, но вроде так "красивше" )))
Доброго дня! Михаил, я не профессионал в битрикс, но учусь)))). Подскажите пожалуйста в какие файлы добавить этот код. Можете подсказать по какому пути находятся?

где передать в глобальный фильтр компонент я вроде нашел, файл находиться по пути

/bitrix/components/bitrix/catalog/templates/.default/section_vertical.php

Все верно, он? Такой код я только в этом файле нашел.

А вот создать файл result_modifier.php с содержимым, я так и не понял где. Уже везде попробовал в компонентах  catalog.section.list по разным путям и создать и добавить в существующий файл Ваш код, но ничего не работает.

Подскажите пожалуйста как для чайников))))
Важно: не редактируй файлы внутри /bitrix/components/bitrix/catalog/templates/.default/ напрямую - при обновлении системы они перезапишутся. Скопируй шаблон catalog в свой шаблон сайта:

/bitrix/templates/{твой_шаблон}/components/bitrix/catalog/.default/
В папке .default уже будет section_vertical.php (или section.php, в зависимости от шаблона).
В нём ищи вызов catalog.section.list и добавляй строчку 'SMART_FILTER_NAME' => $arParams["FILTER_NAME"],.

2. Файл result_modifier.php

Создай его в шаблоне компонента catalog.section.list - НЕ внутри catalog, а именно в catalog.section.list. Путь:

/bitrix/templates/{твой_шаблон}/components/bitrix/catalog.section.list/{шаблон}/result_modifier.php

И уже в этой папке создай result_modifier.php с кодом из статьи.

В двух словах: главное — копировать шаблоны в свой шаблон сайта, а не править внутри /bitrix/components/. Потому что Битрикс сначала ищет шаблон компонента в /bitrix/templates/{твой_шаблон}/components/, и если не находит - берёт из /bitrix/components/.
Если ты создашь result_modifier.php внутри компонента по умолчанию, он сработает, но при обновлении слетит. Лучше сразу сделать правильно.
Михаил, все получилось! Прям от души, спасибо большое!.  
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Стоимость разработки на 1С-Битрикс:

Индивидуальная разработка магазина

от 350 000 руб. от 5-ти недель

Разработка магазина на 1С-Битрикс с нуля. Дизайн, сборка и оптимизация производительности под конкретный проект и требования. Реализация любого функционала без ограничений готовых решений.

Запуск сайта на готовом решении

от 150 000 руб. от 7-ми дней

Вариант для тех, кто не хочет тратить много средств на индивидуальный проект, и не имеет серьезных требований к сайту. Магазин, быстро запускается на базе одного из 200-та готовых решений.

Мобильное приложение

от 400 000 руб. от 5-ти недель

Разработка кроссплатформенного мобильного приложения, которое не уступает нативным решениям как в производительности, так и пользовательском опыте. Публикуется в AppStore, GooglePlay и RuStore

Сайт компании

от 300 000 руб. от 2-х недель

Корпоративный сайт с информационными разделами, каталогом товаров или услуг. Включает формы обратной связи карточек каталога, любое количество статичных и динамичных разделов.

Инфоресурс

от 300 000 руб. от 4-х недель

Информационный ресурс любой сложности. Сайт для СМИ, городской портал или многопользовательская доска объявлений. Внутренние форумы, блоги- по необходимости.

3D‑моделирование, визуализация

от 25 000 руб. от 3-х дней

По вашим фото, чертежам или описанию создадим 3D‑модели и отрендерим набор изображений для каталога товаров: общий вид, крупные планы и технические ракурсы или 360°‑обзор товара.