Региональные поддомены

Всем привет. Возникла потребность вынести часть информации на региональные поддомены. Подскажите, как это грамотно сделать. Разделение на контексты здесь нелогично, потому как поддомены связаны между собой. Вижу страницы поддоменов как дочерние ресурсы специальных родителей. Полагаю, всё это можно реализовать с помощью плагина, но предчувствую проблемы, связанные с таким решением. В первую очередь, у страниц поддоменов будут не поддоменные урлы, т.е. будет видна часть урла, которой быть не должно. Возможно, есть и другие неприятности такого метода. Подскажите наилучший вариант реализации.
Алексей
07 июня 2016, 11:34
modx.pro
2
4 435
0

Комментарии: 5

Роман Воропаев (Volk)
08 июня 2016, 10:51
+1
Идеальное решение для поддоменов от Василия Наумкина в этой теме bezumkin.ru/sections/tips_and_tricks/2439/
    Алексей
    08 июня 2016, 13:36
    0
    Как я понимаю, есть проблема с использованием общих шаблонов во всех контекстах и получении сущностей 2-го контекста из первого. Поправьте, если я не прав. Я писал, что использование контекстов мне не подходит. Если это так, то нужен альтернативный вариант
      Роман Садоян
      08 июня 2016, 14:29
      0
      А какая именно проблема с использованием общих шаблонов?
      Сущности из других контекст можно получать принудительно указывая контекст.
        Алексей
        08 июня 2016, 16:44
        0
        Ошибся. Шаблоны общие для всех контекстов. Пробую реализовать. Как задать главную страницу для поддомена?
    Илья Уткин
    08 июня 2016, 15:26
    1
    +1
    У меня есть один сайтик с региональными поддоменами. Я сделал через подмену главной страницы. Вот плагин, может, поможет чем-то:
    <?php
    if ($modx->context-key == "mgr") {
      return;
    }
    switch ($modx->event->name) {
      case "OnHandleRequest":
        $domain = explode('.', $_SERVER['SERVER_NAME']);
        $city = array_shift($domain);
        $modx->setPlaceholder('city_alias', $city);
        if ($cityRes = $modx->getObject('modResource', array('parent' => 12, 'alias' => $city, 'published' => 1))) {
          $modx->setPlaceholder('city', $cityRes->id);
          $modx->setPlaceholder('city_name', $cityRes->menutitle);
          $modx->setOption('site_start', $cityRes->id);
          $modx->setPlaceholder('+site_start', $cityRes->id);
        } else {
          $modx->setPlaceholder('city', 0);
          $modx->setPlaceholder('city_name', 'Выберите город');
        }
        break;
      default: return;
    }
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      5