Вопрос по фильтру mFilter
Здравствуйте, Василий и сообщество!
Подскажите, пожалуйста, у меня фильтр работает корректно с указанием перечня ресурсов в &resources=``, но через &parents=`` работать отказывается.
Это конечно терпимо, когда товаров мало, но когда их за 100 и последующие нужно добавлять вручную — не очень удобно. Скажите, можно ли как-то вывести через категории? Может я чего-то неправильно делаю?
Вот вызов фильтра mFilter:
Подскажите, пожалуйста, у меня фильтр работает корректно с указанием перечня ресурсов в &resources=``, но через &parents=`` работать отказывается.
Это конечно терпимо, когда товаров мало, но когда их за 100 и последующие нужно добавлять вручную — не очень удобно. Скажите, можно ли как-то вывести через категории? Может я чего-то неправильно делаю?
Вот вызов фильтра mFilter:
[[!mFilter?
&includeMS=`1`
&includeMSList=`price,add1,add2`
&includeTVs=`1`
&processTVs=`1`
&resources=`4,17...` //работает
&parents=`8,9...` //не работает
&includeTVList=`colorImg,form,typeOfImage,country`
&sortFilters=`ms_add1,ms_add2,tv_colorImg,tv_form,tv_typeOfImage,tv_country,price`
&tpl=`tpl.msGoods.row`
&limit=`6`
&pageFirstTpl=`<li class="control"><a href="[[+href]]">Первая</a></li>`
&pageLastTpl=`<li class="control"><a href="[[+href]]">Последняя</a></li>`
]] Комментарии: 11
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
А в &resources=`` можно указать свой сниппет, который будет выбирать все товары категории и возвращать их списком через запятую. Его нужно написать самостоятельно.
В этой теме: mSearch
Вот сниппет этот сниппет:
Сохраните его, и поле &resource=`[[!snippet]]` сделайте.
P.S. А по поводу чего не могу сделать — написать свой сниппет, о котором сказал Василий.
Вот так выглядит мой вызов mFilter
С подсказками Василия я дошел до примера, который вы привели. И у меня все возвращается.
Проблема у тебя теперь в другом.
1. Я хочу фильтры расположить в разных местах страницы. Но фильтровать они должны все вместе. Я понимаю, все элемент формы должны быть внутри формы. Понятно можно объявить форму в начале и конце body. Но тогда необходимо будет элементы формы фильтра расставлять самостоятельно и ручками писать js под каждый, что бы заполнялся.
Есть альтернатива. Расставить элементы без формы. А наступление событий отслеживать js и когда оно наступает, получать данные со всех элементов, которые предварительно указать ручками в js, и отправлять на сервер ajax.
В обоих пример придется руками расставлять элементы. А во втором, заранее в js указать все элементы из которых брать данные.
А есть ли какой либо ещё вариант. И правильно ли я мыслю.
2. Вопрос это по выводу. Во первых как вижу фильтр возвращает данные в плейсходер [+rows], не пойму а как настроить нужный вид отображения. Указать какие поля отображать.
И как сбросить фильтр, что бы снова вывести все элементы.
Вопросов много. Уже неделю разбираюсь с фильтром, и пока конца я не вижу. Очень буду благодарен за любую подсказку.
У него будут определённые классы и id на которые будет реагировать родной js. По другому — только свой фильтр делать.
2. Там указывается чанк для вывода, используются сниппеты getPage + getResources. В чанке, соответственно, нужные плейсхолдеры прописать, а ненужные — удалить.
3. Сбросить фильтр можно на js — пройтись по всем переключателям и выстваить в дефолтное положение, или проще, при клике по специальной ссылке:
Но тут будет перезагрузка страницы.
Вот мой чанк, который работает:
А этот не работает (пустая страница):
При чем не работает ни с полем (тут пишет Задан пустой поисковый запрос), ни без него, без поля cat_id (которого у Вас нет), тоже не работает.
Если ничего — надо разбираться, почему.