
Я не помню ни одного сайта, который мы бы сделали без как минимум 2-ух языков.
Хочу поддержать идеюЯ не помню ни одного сайта, который мы бы сделали без как минимум 2-ух языков.
Как я вижу реализацию многоязычности:
1. В системе должна быть возможность указать, сколько языков будет использоваться на рабочем сайте, а также возможность легко добавить еще в будущем при необходимости.
2. При добавлении нового языка автоматически должны создаваться новые контентные поля во всех документах, нечто вроде TV(например на отдельной закладке), которые дублируют основной язык полностью, т.е. начиная от title, longtitle, alias, ... и заканчивая всеми TV, которые были добавлены ранее для основного языка.
3. Дублирование шаблонов, чанков и сниппетов крайне нежелательно (на данный момент практически невозможно обойтись без создания дополнительных шаблонов и чанков).
4. Текущий выбранный язык пользователем должен быть доступен как глобальная переменная, которую можно использовать в сниппетах, например, для перевода системных сообщений, которые выводит сниппет.
5. Текущий язык при включенных дружественных URLs выводится алиасом /en/..., /ru/... и т.п.
6. Все языковые версии документов могут кешироваться.
Это пока то, что мне пришло на ум.


Да, я думаю, так и должно быть.
Игорь, спасибо за поддержку. Если честно, я знал что ты откликнешся одним из первых
По твоим предложениям:
1. согласен. получается, нужно сделать так, чтобы кол-во языков определялось не при инсталляции, а уже в самой системе была опция (может в tools -> configuration?), позволяющая добавлять/удалять языки. А при инсталляции наверное нужно задавать дефолтный язык?
Да почти все поля, т.к. может получиться ситуация, когда языковая версия документа существует, но еще не переведена и надо скрыть новый документ в меню или вообще на сайте не публиковать, или еще что-то подобное.
2. Сейчас все поля живут в _site_content. Как быть с языками? как насчет варианта дополнять поля языковыми префиксами? в стиле ru_pagetitle, en_pagetitle?
И кстати, список полей для дублирования:
pagetitle
longtitle
description
introtext
content
menutitle
Что еще?
Да, согласен, чанки стоит разделять по языкам, но опять же не стоит их плодить простым дублированием как это происходит сейчас. Пусть они автоматически получают языковые версии как только администратор добавил новый язык, т.е. такая же система, как с документами в дереве сайта. Опять же с шаблонами можно поступить аналогично и НЕ выводить языковые версии шаблонов в выпадающем списке для выбора нужного шаблона документа (необходимый шаблон будет наследоваться от документа главной языковой версии, а текущий язык будет выбираться автоматически уже при генерации страницы на сайте).
3. Вот тут есть вопросы.. с не-дублированием чанков может возникнуть проблема из-за того, что часто используется графика, которая должна быть разной в разных языковых версиях..
Скорее да, чем нет
4-5. Причем эта переменная должна использоваться в префиксах в таблице (см. п. 2) и в качестве названия дерева, и его алиаса. Во как
.

) . А будут идеи или замечания - обязательно сообщу
Доброго дня всем,
Хотелось бы поинтересоваться. Какой наилучший способ сделать мультиязычный сайт (допустим простейший: меню, текст странички, гостевая) на текущей версии MODx? Так сказать какой "best practice" на текущий момент? Просто отдельные папки документов и отдельные шаблоны?