Вы здесь

Как правильно организовать сайт для нескольких городов?

0

Здравствуйте уважаемые коллеги, в сообществе уже поднимался вопрос о том, как лучше реализовать функционал по смене города на сайте: http://dru.io/question/2046, но пока решения нет.

Сейчас у меня стоит аналогичная задача: сделать магазин, в котором товары и различная информация будут выводиться в зависимости от выбранного пользователем города (их будет 3). Я планирую реализовать задачу путём смены подтем. В зависимости от города пользователя будет срабатывать та или иная подтема, на которой будет настроен вывод. Соответственно каждая страница и каждый товар на сайте будут иметь поле таксономии, где можно будет указать к какому городу относится материал, чтобы потом подцепить это вьюсом.

Мне кажется возможность менять тему очень гибкой в плане реализации задуманного. Задачу планирую реализовать при помощи модуля Swith theme, который позволяет переключать темы на основе разных условий. Также думаю при входе пользователя сделать возможность автоматически предлагать город пользователю на основе открытых механизмов геотаргетинга Яндекса, после чего пользователь может подтвердить или опровергнуть предложенный вариант.

Кто сталкивался с реализацией подобной задачи? На сколько такая логика верна, есть ли более изящный способ?
В чём может быть подвох, какие могут возникнуть сложности в дальнейшем при подобном подходе?

Версия Drupal: 
7.x
Вопрос задан 27.02.2017 - 14:36

Ответы

2

Если задача разграничить контент по городам, то есть готовые модули:
Domain Access - очень тяжёлый, но более функциональный
Views Global Filter - более лёгкий, но менее функциональный

Можно сделать и без модулей, ограничившись полем, если вам нужно только фильтровать контент в Views.

Зачем вам отдельные темы и Swith theme не очень понятно.

Ответ дан 27.02.2017 - 15:10
Аватар пользователя xandeadx
xandeadx
1440

Всё звучит хорошо, но как быть с блоками, которые не выведены views? Также если у темы есть свои настройки, их тоже получится вывести через условие?

Комментарий оставлен 06.03.2017 - 11:48

Что ни так с "блоками, которые не выведены views"? О Каких настройках темы идёт речь?

Комментарий оставлен 06.03.2017 - 12:06

Я в теме добавил свои настройки, где указываю ссылки на социальные сети и иную контактную информацию. Как мне их выводить в зависимости от города? Условие пойдёт через этот глобальный фильтр каким-то образом? Он не только на вьюсах работает?

Комментарий оставлен 20.03.2017 - 11:42
0

Был опыт с DA, он действительно сверхтяжёлый и вряд ли может быть оправдан, если требования тривиальные.
Сейчас реализую подобное на восьмёрке, использую конфигурационную сущность Service provider/Store/Whatever, где одно из свойств -- регион (паттерн Фасад). Темы есть смысл задействовать, если верстка изменяется в зависимости от города, что в вашем кейсе, похоже, отсутствует.

Ответ дан 27.02.2017 - 17:23
0

Была подобная задача, только с более простым информационным сайтом. Реализовывал с помощью субдоменов с редиректом на основной домен, где и определял какой субдомен активен.
Может натолкнет на какие мысли.

Ответ дан 01.03.2017 - 10:46
Аватар пользователя Apuox
Apuox
15
-2

Cамый простой и быстрый способо, воспользоваться парадигмой реализации locale

Ответ дан 04.03.2017 - 12:30