Продолжение темы о гео-контенте сайтов на Drupal

Главные вкладки

Аватар пользователя fit fit 29 августа 2011 в 17:02

Несколькими неделями ранее мне понадобилось решить такую задачу, которая часто встречается на сайтах, но на Drupal я еще такого не встречал:
Нужно, что бы посетитель сайта мог выбрать свой город из списка и в зависимости от выбранного города - выводить необходимые данные и разделы.
Так делают крупные провайдеры и операторы для того, что бы пользователи могли фильтровать информацию по региональным филиалам.

Итого хочу сделать следующее:
Есть три города: Москва (по-умолчанию), Екатеринбург и Пермь.
Есть блоки с контактными данными (адреса и телефоны)
Есть разделы: Новости, Товары

При выборе из списка городов, например, Екатеринбурга - осуществляется переход на ekaterinburg.site.ru (каждому городу - субдомен);
Контактные данные в блоках сменяются на актуальные для этого города;
Наполнение разделов Новости и Товары только страницами, которые касаются Екатеринбурга;

В голову пришел такой метод:
Во все типы материалов добавить поле для ввода термина таксономии, что бы привязывать каждую страницу к определенному городу (город = термин).

Объект (блок. облась) для выбора города будет передавать данные о выбранном городе браузеру пользователя через куки. Далее JavaScriptом скрывать все страницы, разделы и блоки, которые не относятся к выбранному городу.
Не знаю на сколько мой способ правилен, поэтому и создал топик, что бы услышать от Вас еще какие то варианты решения. Буду крайне признателен!

Комментарии

Аватар пользователя Alexei91 Alexei91 30 августа 2011 в 3:44

Проще делать перенаправление на соответствующий поддомен.

Редирект по выбору элемента из списка (в данном случае городов) делается с помощью:

<script>

$(function(){

  $('select[name="<имя списка>"]').change(function(){

    location.href = this.value;

  });

});

</script>

...и это уже обсуждалось.