Формирование ссылки в msfilter2
Может быть кто-то сможет подсказать в вопросе с формированием ссылок, я несколько запутался:
Есть структура меню:
— — Поиск специалиста
— — — — Федеральный округ
— — — — — — Область (дальше уже каталог с специалистами области)
Есть две страницы с фильтром:
1. Страница «Поиск специалиста» — здесь проблем нет, фильтр отрабатывает, все данные выводит.
2. Страница «Федеральный округ». Из-за особенности формирования результатов для фильтров: в разделе «Область» у меня не «Коллекция» или «Ресурсы», а «Подборка», т.е фактически, все специалисты лежат в отдельной «Коллекции» за пределами дерева меню, по-этому фильтр у меня имеет фиксированное значение «родителя». Следовательно, на странице «Федеральный округ» у меня все равно есть фильтр по округам. И вот я хочу сделать так, чтобы на каждой страничке ФО этот фильтр был уже отмечен.
Я попытался пойти путем «Заморозки адреса» для ресурса «Федеральный округ», и добавлением в хвост адреса парметр с округом:
.../abiturientam/najti-predstavitelya/krym/?tv|mentor_fo=Крым, однако, при переходе по ссылке выдается 404 страница. Самое удивительное, что, если вручную выбирать фильтр по Крыму (например), то ссылка имеет точь в точь такой же вид, который выдает 404 страницу.
И еще, в другом месте я похожим образом формирую ссылку на программы специалистов, и там, добавляется на уровне чанка параметр. И вот в этом случае он работает.
Как так получается?
Комментарии: 7
Скрин дерева ресурсов, код вызова mFilter2 и описание того, что должно получится, — вот такая информация помогла бы получить ответ. А пока мне непонятно, что ты пытаешься сделать.
Пока готовил вам ответ, понял в чем ошибся. Теперь все работает.
Я параметр прописывал с учетом перехода в подкатегорию (Крым), а нужно было без нее делать. Это все равно немного странно, но работает прекрасно.
Я параметр прописывал с учетом перехода в подкатегорию (Крым), а нужно было без нее делать. Это все равно немного странно, но работает прекрасно.
Вооот, потому что правильно сформулированный вопрос это 50% ответа))
Это правда :)
Но, справедливости ради, отмечу, что достигнутый результат не совсем тот, который хотелось бы видеть. Перехода на внутреннюю страницу не происходит, следовательно, пользователь не понимает, что он «внутри округа». Попробую с изображениями теперь написать:
Внутренняя структура:
Ресурс «Представители» это подборка, сделанная через компонент «Collections». Все ресурсы берутся из категории с ID 162.
Код вывода фильтра на странице «Найти представителя» и странице «Центральный ФО» (дочерняя категория «Найти представителя»):
И я хочу добиться того, чтобы, при заходе на страницу «Центральный ФО» через меню, фильтр стоял по-умолчанию на пункте «Центральный ФО».
Дело в том, что из-за того, что фильтр «mentor_fo» привязан не к категориям в дереве ресурсов, а вручную вбивается в каждом сотруднике в качестве TV поля с множественным выбором, то фильтр сам не понимает, что мы внутри конкретного округа.
Ох, надеюсь, что сейчас чуть понятнее… Стало.
На самом деле, я хочу понять, почему, вписанная в замороженный url (первый скриншот сверху) ссылка не работает. Тогда как на странице с фильтром, если выбрать нужный округ там, то ссылка имеет именно этот вид :)
Но, справедливости ради, отмечу, что достигнутый результат не совсем тот, который хотелось бы видеть. Перехода на внутреннюю страницу не происходит, следовательно, пользователь не понимает, что он «внутри округа». Попробую с изображениями теперь написать:
Внутренняя структура:
Ресурс «Представители» это подборка, сделанная через компонент «Collections». Все ресурсы берутся из категории с ID 162.
Код вывода фильтра на странице «Найти представителя» и странице «Центральный ФО» (дочерняя категория «Найти представителя»):
[[!mFilter2?
&parents=`162`
&limit=`12`
&hideContainers=`true`
&suggestions=`false`
&tvPrefix=`tv.`
&includeTVs=`mentor_area,mentor_bisness,mentor_status,mentor_spec,personTown,mentor_fo`
&tplOuter=`user-pers_mFilter2.outer`
&tpl=`persons_item`
&tpls=``
&sort=`resource|pagetitle:asc`
&filters=`
tv|mentor_fo,
tv|mentor_area,
tv|personTown,
tv|mentor_status,
tv|mentor_spec,
`
...
Здесь «mentor_fo» — фильтр по Федеральным округам.И я хочу добиться того, чтобы, при заходе на страницу «Центральный ФО» через меню, фильтр стоял по-умолчанию на пункте «Центральный ФО».
Дело в том, что из-за того, что фильтр «mentor_fo» привязан не к категориям в дереве ресурсов, а вручную вбивается в каждом сотруднике в качестве TV поля с множественным выбором, то фильтр сам не понимает, что мы внутри конкретного округа.
Ох, надеюсь, что сейчас чуть понятнее… Стало.
На самом деле, я хочу понять, почему, вписанная в замороженный url (первый скриншот сверху) ссылка не работает. Тогда как на странице с фильтром, если выбрать нужный округ там, то ссылка имеет именно этот вид :)
Попробуй JS триггерить
Думал это на крайний случай оставить, рывок все-таки будет виден.
Дело в том, что я точно также (добавлением параметров к ссылке) формирую переход в другом месте. И там у меня все отрабатывает прекрасно.
У меня сайт на тестовом сервере, может быть можно ссылку оставить, это не спам — вот здесь reg.wwwhite.ru/predstavitelstva/, если на карте выбрать любую точку, там есть большая зеленая кнопка для перехода в фильтр. Так вот она работает и 404 ошибку не вызывает. Чтобы увидеть, что оно работает, точку нужно выбрать в Крыму :))
Единственная разница — здесь параметры идут после .html, а там, где не работает, идет после слеша.
Дело в том, что я точно также (добавлением параметров к ссылке) формирую переход в другом месте. И там у меня все отрабатывает прекрасно.
У меня сайт на тестовом сервере, может быть можно ссылку оставить, это не спам — вот здесь reg.wwwhite.ru/predstavitelstva/, если на карте выбрать любую точку, там есть большая зеленая кнопка для перехода в фильтр. Так вот она работает и 404 ошибку не вызывает. Чтобы увидеть, что оно работает, точку нужно выбрать в Крыму :))
Единственная разница — здесь параметры идут после .html, а там, где не работает, идет после слеша.
Итог страданий:
&tvFilters=`mentor_status==%[[*longtitle]]%`
Где longtitle значение фильтруемого TV поля, в ресурсе родителя.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.