Есть фильтр по ресторанам. Рестораны фильтруются по станции метро, среднему чеку, виду кухни, типу заведения и тд. Примеры ссылок для фильтрации:
site.ru/metro/станция_метро
site.ru/metro/станция_метро/kitchen/вид_кухни
Пользователь на странице отмечает галочками нужные пункты, потом нажимает "найти". Я думаю формировать юрл с помощью js. Правильное ли это решение?
P.S. Чтобы передать, например, несколько станций метро лучше использовать разделитель или есть варианты лучше? То есть ссылка будет такого вида site.ru/metro/станция_метро1,станция_метро2
McBernar: Адекватный разработчик должен быть нацелен на любую группу граждан и необходимо учитывать все варианты. Сделав "только для тех, у кого работает" грош цена такой работе.
sferos: нет. Потому что без js сейчас не работает ни один популярный сайт. Соответственно, человек, отключающий js — упорот слегка. На них явно не стоит ориентироваться.
Max_Borisov: Не совсем. js должен дополнять функционал, но не заменять его. Т.е. если у вас убитый браузер или отключен js(такое можно наблюдать например в ТОP) то вы должны увидеть хотя бы одну картинку, пусть и без слайдера. Многократно сталкивался с ситуациями, когда действительно имелись клиенты, выдающие жалобу на то, что у них "что-то" не отображалось. Поэтому я и говорю, что js должен расширять возможности, но никак их не заменять(не беру в расчет проекты, построенные на сокетах и сплошном аяксе).
делал недавно
у всех чекбоксов в фильтре писал в data-аттрибуты кусок ссылки и просто складывал их через /
если выбирались 2 чекбокса из одной группы, например 2 бренда то этот кусок ссылки делал в гет-параметры
яндекс все нормально начал обрабатывать через 1.5-2 месяца и выводить такие страницы в поиск
главное чтоб цмска жрала такие ссылки и правильно их обрабатывала + делала нормальный h1 и меты
UPD
немного не так написал
проходишься циклом по блокам фильтра
если в каком-то из блоков 2 галки и более например выбрано 2 бренда то формируешь ссылку с гет-параметрами
если по одной галке то формируешь чпу-ссылку
повторю главное что цмска умела такие ссылки распарсивать
для этого делают обычно префикс к ним например /f/
получается что то типа site.ru/catalog/f/brand_бренд/color_цвет/
Распарсивать такие ссылки проблемы нет.
То есть Вы считаете, что если более двух вариантов отмечено, нет смысла чпу делать для этого параметра?
Для преобразования строки в часть урл использовали js или php?
использовал js, все данные выводились в дата-аттрибуты у чекбоксов ( чпу-титл группы фильтра, чпу значение чекбокса, параметр для get )
про 2 галки в блоке и более - никто не ищет "шины nokian и bridgestone", ищут "nokian летние" или "nokian 16 дюймов", поэтому смысла в них нет (проверено уже на 2х сайтах)
+ делается это все в корневой странице каталога, или раздела (если разделы сильно отличаются и у них совсем разные фильтры, например сайт торгует краской и фурнитурой)
во внутренних страницах каталога если есть разбиение например по брендам (в разделе catalog созданы страницы nokian, bridgestone и тд) фильтруется все гет-запросами
если же все товары свалены в один раздел то навигация будет только за счет фильтра и в этом случае такие чпу-ссылки самое оно