We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 32725
    • 107 Posts
    Подскажите, как более грамотно организовать на сайте мультиязычность.

    В дереве делаю две ветки ru и en, и все остальное кидаю уже в них.
    далее нужно сделать так, чтоб можно было переходить на разные языковые версии одного документа. Тут у меня 2 варианта, либо делать в двух ветках одинаковые алиасы, и искать по ним (но искать получается неудобно, так как в одной ветке могут быть 2 дока с одним алиасом. т.е. нужно еще и проверять где именно лежит документ).
    2-й вариант добавить в документ TV в котором указывать id документа в другой яз версии (тут неудобство заключается в самом указывании айди и в случае, если языка не 2, а много)

    Кто знает, как это сделать по-человечески, подскажите пожалуйста
      My portfolio
      Самурай без меча подобен самураю с мечом, только без меча.
      • 785
      • 2,113 Posts
      Мне кажется, проще всего для переключения вызывать сниппет, в котором генерируется ссылка на аналогичную страницу. При этом структура и псевдонимы должны быть одинаковыми, а в корне папки названы, например, ru и en. Тогда в сниппете можно использовать команду типа str_replace ("/ru/", "/en/", $modx->makeURL($modx->documentIdentifier)) для генерации ссылки на английскую страницу с аналогичной русской.
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 4379
        • 23 Posts
        Еще один вариант, так пока и не опробованный мною, поскольку раньше чем разобрался я тоже начал делить сайт на два дерева. А интересно, что из этого получится.
        Вариант такой. Добавить для всех нужных полей соответствующие tv для других языков. И повесить на OnWebPagePrerender плагин, который бы в зависимости от языка заполнял нужные поля содержимым соответствующих tv. Интересно, насколько сильно упадет скорость отображения сайта?
          • 22532
          • 349 Posts
          или второе поле контент ([*content_en*]) добавить для англоверсии например
          и заполнять оба поля соотв, а в шалоне вместо привычного [*content*] будет снипет который глядит какая версия щас запущена
          ну как то так..
          конечно реализовать такое было бы сложновато...
            • 32725
            • 107 Posts
            Quote from: p4sh0k at Oct 28, 2008, 05:15 AM

            или второе поле контент ([*content_en*]) добавить для англоверсии например
            и заполнять оба поля соотв, а в шалоне вместо привычного [*content*] будет снипет который глядит какая версия щас запущена
            ну как то так..
            конечно реализовать такое было бы сложновато...
            Не очень хороший вариант, так как такие нужные поля как published, hidden, и т. д. будут одни и те же для всех версий, и если нужно будет иметь разные значения этих полей для разных версий, то эти поля тоже придется дублировать.
              My portfolio
              Самурай без меча подобен самураю с мечом, только без меча.
              • 22532
              • 349 Posts
              а помоему ничего дублировть не надо будет
              потому как в идеале это будут сайты копии как и здумывалось, просто с разными языками контента tongue
                • 22532
                • 349 Posts
                а.. ну и для вызова меню тоже соответственно тоже сделать надо..
                дубликаты понадобятся кстати только для полей заголовков страниц и мета данных наверное..

                вообщем можно както разобраться.. но такой вариант был бы идеален
                т.к. когда меняешь инфу о товаре например, не надо искать потом егоже еще и в англо ветке сайта
                все под рукой grin
                  • 785
                  • 2,113 Posts
                  Quote from: p4sh0k at Oct 30, 2008, 05:25 AM

                  но такой вариант был бы идеален
                  На мой взгляд – как раз наоборот. Куча лишних параметров и усложнение алгоритма взамен неочевидной выгоды. А если используются заголовок, расширенный заголовок, аннотация, меню, основной текст и пара дополнительных TV, то для двуязычной версии все это надо продублировать, причем редактирование будет не таким удобным, так как поля дополнительных параметров не будут выглядеть точно так же, как и основные. А если разные языки редактируют разные люди, потом не найти концов, кто в чужом языке ошибок понаставил.
                    Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                    Статьи о MODx, регулярно новые публикации
                    • 16545
                    • 358 Posts
                    p4shok: A кто мешает использовать для этих мер ManagerManager (http://modxcms.com/ManagerManager-1565.html) ?
                      • 785
                      • 2,113 Posts
                      Написал небольшую статью о создании многоязычного сайта, может кому-нибудь она будет полезна – многоязычный сайт на MODx. Если есть пожелания, что можно было бы раскрыть в следующей статье по этой же тематике, можете их высказывать.
                        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                        Статьи о MODx, регулярно новые публикации