We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 39584
    • 29 Posts
    Вообщем то пытаюсь понять как же сделать мультиязычность на сайте, попробовал делать как написано в статье http://community.modx-cms.ru/blog/documentation/5930.html Ну как бы создает документы на 2-х языках, а вывести их не получается. По инструкции надо стоздавать настройки типа - site_url для контекстов. Создал и при нажатии смены языков просто дает ошибку - The requested URL /www.cncbp.ru/en/index.php was not found on this server.
    Кто-то может подскажет нормальную инструкцию по настройке Babel или подскажет че не то делаю.
    Прошу не судите сильно, только начал изучать MODx. [ed. note: sergeymiracle last edited this post 14 years, 6 months ago.]
      • 31246 ☆ A M B ☆
      • 428 Posts
      приведите код плагина, который переключает контексты.....
      И ссылка не работает которую вы дали.
      Как вы создавали?
        Valentin Rasulov - Industrial design (Hobbies - Web Development)
        Development not standard projects on CMF MODx Revolution.
        Small sample of extensions
        • 39584
        • 29 Posts
        Чето у меня куча боков вылезла. Нужны fredly урлы, включаю - вообще ничего не пашет smiley
        То есть ссылки созданные Wayfinderом тоже не пашут....
        плагин
        <?php
        if($modx->context->get('key') != "mgr"){
                /* grab the current langauge from the cultureKey request var */
                switch ($_REQUEST['cultureKey']) {
                    case 'en':
                        /* switch the context */
                        $modx->switchContext('English');
                        break;
                       default:
                        /* Set the default context here */
                        $modx->switchContext('web');
                        break;
                }
                /* unset GET var to avoid
                 * appending cultureKey=xy to URLs by other components */
                unset($_GET['cultureKey']);
            }


        Чет у меня чувство что надо начинать с начала (наша песня хороша начинай с начала)

        Может подкините инструкцию как на Bable сделать мультиязычность? Мозг кипит уже.
          • 39584
          • 29 Posts
          В ссылке точка стоит, щас уберу попробуйте перейти
            • 39584
            • 29 Posts
            Поправи htacces, дело продвинулось. Главная траница теперь выглядет так http://www.cncbp.ru/www.cncbp.ru/en/index.php?id=15, почему дублирует только понять. Но контент на разных языках так и не видать
              • 39584
              • 29 Posts
              Вообщем то ошибка была в htacces. Френдли уры заработали. Но пока не смог вывести инглиш контент. Буду ковырять...
                • 39584
                • 29 Posts
                Вообщем дальше главной прыгнуть не могу ... Попробовать сначала пройтись что-ли...
                  • 31246 ☆ A M B ☆
                  • 428 Posts
                  я инструкций не знаю, ..... могу только расказать как я делаю.
                  1) файл .htaccess, по дефолу
                  2) Я создаю папки к вашему примеру en и de, копирую туда файлы .gitignore, .htaccess, config.core.php, index.php, favicon.ico.
                  3) В файле index.php меняем контекст на свой. т.е. если папка en то на контекст en (да, забыл сказать, контексты называем двухзначным кодом языка)
                  В файле config.core.php - путь должен быть от корня сервера к папке core
                  4)создаю плагин (называйте как хотите).
                  <?php
                  $lankey = substr($_SERVER['REQUEST_URI'], 1, 2);
                  if($modx->context->get('key') != "mgr"){
                      //grab the current domain from the http_host option
                      switch ($lankey) {
                        case 'en':
                              //switch the context
                              $modx->switchContext('en');
                              //set the cultureKey
                          $modx->setOption('cultureKey', 'en');
                              break;
                          case 'de':
                              $modx->switchContext('de');
                          $modx->setOption('cultureKey', 'de');
                              break;
                          default:
                              // Set the default language/context here
                              $modx->switchContext('web');
                          $modx->setOption('cultureKey', 'ru');
                              break;
                      }
                  }

                  Ставим в вкладке Системные события галочку на против ключа OnHandleRequest
                  5) В всех созданных контекстах, создаём параметры
                  Контекст: Английский
                  Base URL: ключ «base_url», значение "/"
                  Culture key: ключ «cultureKey», значение «en»
                  Site start: ключ «site_start», значение «id стартовой страницы в данном контексте»
                  Site URL: ключ «site_url», значение «your-website-url.com/en/»

                  6) Уже с Бабелом играться... [ed. note: valikras last edited this post 14 years, 6 months ago.]
                    Valentin Rasulov - Industrial design (Hobbies - Web Development)
                    Development not standard projects on CMF MODx Revolution.
                    Small sample of extensions
                    • 39584
                    • 29 Posts
                    Не очень понимаю в этом config.core.php но стоит попробовать. А то уже просто мозг вынесло
                      • 31246 ☆ A M B ☆
                      • 428 Posts
                      config.core.php менять только в созданных папках, пример
                      <?php
                      define('MODX_CORE_PATH', 'server_patch/home/your-website-url.com/www/core/');
                      define('MODX_CONFIG_KEY', 'config');
                      ?>

                      Вот эта строчка server_patch/home/your-website-url.com/www/core , должна быть такая-же как - если открыть файл core/config/config.inc.php и найти строчку $modx_core_path = 'server_patch/home/your-website-url.com/www/core/' [ed. note: valikras last edited this post 14 years, 6 months ago.]
                        Valentin Rasulov - Industrial design (Hobbies - Web Development)
                        Development not standard projects on CMF MODx Revolution.
                        Small sample of extensions