Another multilingual solution for modx 0963, it is supposed to overcome the shortcomings of the other solutions.
MLx is a set of Snippets to allow one to build multilingual sites on modx:
- find best translation possible for an article,
- produce links to translations,
- output chunk or text based on current language (for translation of interface elements).
to download the latest version :
http://modxcms.com/MLx-Multi-Language-eXtension-2354.html
Here’s how it works:
To make a multilingual website using the actual modx version (0963), we will :
- build distinct hierarchies of articles (trees) for each language, where the root of each language tree will be an article representing the language itself (alias set to language-code);
- have a reference language tree, whose root is known as the reference language root;
- for any article that it is not in the reference language tree, we may add a pointer (using a ’reference_page’ template variable) to a reference article in the reference tree.
- install the 3 MLx snippets.
This process builds a set of language trees, where some articles (not necessarily all) point to reference articles in the reference language tree.
Based on this, the MLx system will then try for an article A to find the best translation in every language, that is:
- find a best reference article for article A :
- if A points to article B in reference article tree, then it’s B, else go up to parent article of A to find a pointer to the reference tree, and further up if needed...
- find a best translation based on best reference article in every other language (similarly).
The MLx solution has the following advantages:
+ url path is in correct language
+ each language may have some structural variations (not each article ought to be translated)