Настройка фильтров товаров на modx revo (MS2).
Есть сайт в процессе разработки.
На сайте создан каталог товаров на базе minishop2.
В каталоге несколько категорий товаров, товары в каждой категории имеют свой набор параметров и свойств, заведенных с помощью TV.
На фронте в каждой категории присутствует форма фильтра по товарам внутри категории. Форма должна иметь набор выбираемых параметров, соответствующих категории, в которой она отображается.
Есть купленный msearch2/mfilter2, но не обязательно использовать именно его.
Задача:
1. Обеспечить фильтрацию товаров в категории (сейчас вывод через msProducts) в соответствии с переданными из формы фильтра параметрами.
2. Обеспечить относительно легкое редактирование (обсуждаемо!!!) набора параметров для фильтрации в той или иной категории и отображение выбранного набора параметров в форме на фронте.
3. Обеспечить корректное отображение формы после выбора параметров для категории.
4. Обеспечить отображение выбранных параметров фильтра в форме при отображении на странице результатов фильтрации
Тонкости:
1. В форме в каждом параметре с выбором должны быть только те значения, которые есть у товаров в товарной базе.
2. Форма должна точно соответствовать существующей верстке.
3. Верстка формы выполнена в четыре столбца - то есть нужно будет тем или иным способом регулировать попадание того или иного параметра в столбец, а при заполнении столбца переходить на следующий. Допустимо распределять параметры по столбцам вручную из админки.
4. Параметры в фильтре есть трех типов - список с множественным выбором (чекбоксы), список с одиночным выбором (да/нет), ползунок для задания границ численных значений (от и до).
В целом, высоких требований по юзабилити системы администрирования формы нет. Главное, чтобы форма редактировалась из админки и чтобы процесс ее редактирования можно было донести до модератора сайта. То есть не просто куском кода, а с помощью более понятных простому пользователю инструментов.
Скриншот формы - во вложении.
Еще раз повторю - реализация целиком и полностью подлежит обсуждению. Вполне вероятно, что можно многое упростить.
Обсудить детали можем в переписке в скайпе.