UMIhelp

Разработка сайта на UMI.CMS => Шаблоны XSLT => Тема начата: mihdan от 23 Сентября 2013, 18:56:03

Название: Зависимые фильтры
Отправлено: mihdan от 23 Сентября 2013, 18:56:03
натолкните на мысль как реализовать звисимые фильтры как здесь http://clip2net.com/s/5OaUYj , чтобы при выборе одного параметра перестраивались все другие. При выборе производителя менялась страна, тип корпуса и прочее. Сейчас вывод объектов каталога реализован через getObjectList

Живой пример - http://www.ledsdoit.ru/shop/lampy_svetodiodnye/e27/
Название: Re:Зависимые фильтры
Отправлено: e.ioffe от 24 Сентября 2013, 12:46:16
Правильно понимаю, что зависимыми должны быть только справочники? Или могут быть и другие поля?
Название: Re:Зависимые фильтры
Отправлено: mihdan от 24 Сентября 2013, 13:00:47
Все присутствующие здесь (http://clip2net.com/s/5OsxBn) фильтры должны быть зависимыми
Название: Re:Зависимые фильтры
Отправлено: admin от 25 Сентября 2013, 12:00:09
самый простой путь, но очень долгий по времени работы, это при выводе значений списка проверять есть ли товары с данным значением в данной категории. Но запросов будет масса.

Можно написать серию макросов, которая будет возвращать возможные значения с учетом имеющихся в данном разделе товаров.

можно написать серию макросов с прямыми запросами в базу, которая будет быстрее возвращать возможные значения фильтра

Можно еще хитрить с записыванием возможных значений в файл и т.п., но это частные случаи и в большинстве своем не true, так как не расширяемые и много ограничений.

P.S. И практически все варианты , по хорошему, подразумевают ajax запросы к этим макросам.
Название: Re:Зависимые фильтры
Отправлено: e.ioffe от 25 Сентября 2013, 12:05:09
Либо, как вариант, получить сразу все товары, показать их в <div style="display: none;">, а потом фильтровать через javascript. Пример подобного могу отправить в личку.

Из плюсов:
- всего лишь один запрос к базе
- практически мгновенная фильтрация
Из минусов:
- страница становится очень тяжелой, соответственно, долго грузится
- большая нагрузка на машину посетителя
Название: Re:Зависимые фильтры
Отправлено: Aisamiery от 28 Сентября 2013, 16:44:23
Ну не вижу конечно тут нагрузки.

А вообще правильно:
Написать макрос который будет формировать элементы справочников фильтров по товаров в данной категории и получаем их при помощи js в формате json и уже оперируем на странице конкретно через js. Для снижения нагрузки если юзаете html5 можно использовать session storage