Здравствуй, друг. Сегодня мы будем делать выпадающий список с выбором города. Подобные решения есть на крупных сайтах. На данный момент поисковые системы добавляют список выбора города - локации к релевантности страницы. Локация подчеркивает коммерческую составляющую сайта.
Для тех кто в танке - данный пост больше подходит для новичков. Прошу не писать - все и так ясно и мы и так все знаем, что не редко делают под моими Решениями. Хотя и мне бы подобное руководство помогло бы сохранить время, поскольку такой информации в интернете нет.
Здесь обсуждали решение и отсюда я подчерпнул основную идею https://drupal.ru/node/129456
В прошлом делал выбор города в друпал через отдельный скрипт, но лучшее решение через кастомные возможности движка Друпал8 без программирования.
Задача - сделать возможность выбора городов с выпадающим списком.
Важно отметить что название города должно оставаться при переключении между страницами.
Переключение города не должно куда-то вести. Контент на сайте оставляем как есть.(Правда можно выводить доп контент от выбора города, об этом позже).
1. Создаем словарь Таксономии "Города" и заполняем нужные нам термины(Москва, Киев, Минск, Астана и тп)). Впоследствии их можно будет расширить и даже создать иерархию по странам.
2. Создаем представление терминов "Выбор города". (НАСТРОЙКИ ПРЕДСТАВЛЕНИЯ Показать - Термин таксономии). При создании представления выбираем тип словаря - "Города", который мы уже создали.
Также ставим галочку НАСТРОЙКИ БЛОКА - Создать блок.
Настройка представления:
1) Добавляем критерий фильтрации Taxonomy term: Термин
Делаем его раскрытым. Ставим галочку "Запоминать последний выбор". Отмечаем галочкой все роли пользователей для корректной работы. Убираем метку и выбираем город по умолчанию.
2) Включаем Ajax и для выпадающего списка я использовал
Better Exposed Filters, свой скрин настроек прилагаю:
3) Для того, чтобы скрыть вывод самого термина в блоке в представлении выбираем "Показать:Поля"
В настройках поля термина делаем перезапись на html код пробела. Я использовал
3. Осталось вывести блок в нужном месте.
Если вы хотите сделать вывод контента в зависимости от города, то можете добавить поле "Описание термина" и выводить поместные адреса и телефоны.
Комментарии
Очень сомнительное решение "Улучшение SEO через вьюшный фильтр городов (ajax)"
Где геокодирование по IP, глобальные куки по выбранной локации?
И самое главное, как поисковые боты всё это будут индексировать?
Решение НЕ соответствует заголовку темы.
Короче, незачет.
P.S. Лучше назови тему так: "Делаем раскрытые фильтры Views" и пофиг что там, города или фрукты.
P.P.S. И без подобных "костылей".
Можно ссылку на сайт, чтобы было понятно о чем речь.