Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!
Не реализовывал, но думаю, нужно делать как то так:
- делаем выборку по каждому разделу. Выбираем не пустые свойства. Список свойств кешируем, скажем на сутки-двое.
- используем список свойст для фильтра
Если не ошибаюсь (выборку не пустых вроде как делал) запрос на не пустые свойства как раз и вернет только список значащих свойств.
Можно создать инфоблок "Фильтр" в в нем разделы. В доп. свойствах раздела привязка к разделу каталога. Внутри раздела елементы, которые в себе содержут набор свойств инфоблока в зависимости от привязки к каталогу ИнфоБлока.
MyIE, Ничего себе!!! Десять раз перечитал, но до конца не осознал. Звучит многообещающе. Вот только вопрос - насколько гибкая система получиться? Придется вручную учитывать изменения разделов и появления новых элементов?
Нет, фильтр строится полностью сам на основе ИБ "Фильтр".
Вам необходимо:
- Создать ИБешку "Каталог товаров".
- Создать разделы.
- Добавить свойства ИБ.
- Добавить элементы в разделы ИБ "Каталог товаров".
----------------------------------------------------------------
- Создаем ИБ "Фильтр".
- Добавляем ему свойство (множестченно) "FILTER".
- В нем создаем раздел (дальше на примере) "Телевизоры".
- В доп. свойства раздела делаем привязку к разделу "Телевизоры" ИБешки "Каталог товаров".
- Добавляем в ИБ "Фильтр" -> "Телевизоры" елемент в котором в свойстве "FILTER" (созданном ранее для ИБ "Фильтр") добавляем свойства ИБ "Каталог товаров" (поле множественное).
----------------------------------------------------------------
Пишем компонент.