The LVSYS platform has been modified to better support internationalization and multilingual websites. The new update provides internationalization support directly within the templates, which means that instead of deploying one set of templates for each language, all that is needed now is to deploy one set of templates along with one language file per language.
There is a difference between making an english, french or spanish monolingual website, which the platform has been supporting since 2009, and making a multilingual website, which requires the website to display different content and templates according to the language chosen by the visitor on the fly.
In the case of monolingual websites, the CMS templating engine and the websites templates are statically configured for a specific language: english, french, spanish, etc. without further consideration. All outgoing emails, error messages and notifications are displayed in the language configured.
In the case of multilingual websites, however, the CMS engine must adapt its internal configuration to match the language chosen by the visitor, and must provide ways to switch back and forth between languages on the fly. While the core CMS templating engine required no modifications, the templates however needed to support language tables.
Language tables are long lists of messages each identified by a keyword, and then, instead of typing raw text, the template programmers refer to these message ids, which will be then looked up and translated on the fly by the LVSYS templating engine. It's a simple process.
Here's an Example:
|Monolingual Website||Multilingual Website|
Some HTML code
No template language file
Some HTML code
Template Language file:
In the above example, notice how the template is modified to use short code notation for calling the proper text from the language files. This is used for all the buttons, the informative text, the error messages, the email notifications and such.
To switch between languages, all you need to do is add "lc=fr" or "lc=en" or "lc=es" to the URLs of your pages. "lc" is a short hand for "Locale" which is the standard term referring to the language configuration in computer systems. If language files are present for the locale (en, fr, es, cn, etc) then the website will be displaying the proper language, if not, the website will be displayed in the default language (usually english).
Setting up a multilingual website should be a well planned decision. Make sure to plan out your navigation and your content before starting the website production.
Here's a quick checklist of items that must be localized: