2sxc Languages Overview
2sxc is exceptionally good at multi-language content.
All content/data is Multi-Language by default.
As such, there are different parts that make it work:
- Multi language principles and data model
- Manual Content localization / translation / internationalization (i18n)
- Automatic Content translation (new in v15)
- Translation Permissions TODO: DOCS
- UI localization
Multi-Language Principles
The internal EAV Data Model stores each value with language assignment. Key facts:
- There is always a primary language which is set by the platform (DNN/Oqtane).
- The primary language must always be filled first. Other languages cannot be edited without the primary language having content.
- Other languages will inherit the values from the primary language by default.
- Changing the primary language can have suprising side-effects, because it can result in scenarios where the primary language is missing.
In such scenarios the system will still try the primary language, but if it's empty, will fall back to the first language having any content for a specific field.
- Values can be for a single language only, or shared across languages
- In read/write shares, any change made in the value will automatically apply to all languages that use this value
- In read-only shares, the value can only be edited in the main language; all other languages just "inherit" the value
- In secondary languages which are not translated, they are not translated and will automatically fall back to the primary language
👉🏽 Read more about the Multilanguage Data Model
Edit-UI Translation Features
The Edit-UI can make a field editable in certain languages and not in others. These are the factors that control it:
- Data is missing in the primary language (then translating it isn't possible yet)
- Some data is not multi-languages so it's either not editable in other languages, or the changes automatically affect all languages. This specifically affects these two cases:
- Related items (which are the same across languages)
- Asset-files (which are the same across languages)
- Field-Configuration disables translation of field (common in url-id-fields)
Export-Import of Multi-Language Content
This is documented in Data Export / Import.
Manual Content Translation
Editors can always unlock any field (or all fields) to manually translate them. In that case it will copy the original value from the primary language.
Users can also link languages together.
This is ideal in scenarios where multiple secondary languages are closely related, such as de-DE
and de-CH
.
TODO: SCREENSHOTS?
Automatic Content Translation
This is a new feature in 2sxc v15 and available to Patrons (people who wish to support the development of 2sxc).
👉🏽 Read more about Automatic Translation
Translation Permissions
TODO:
UI Localization
The Edit-UI is localized at two levels:
- Custom Inputs, Help-Texts etc.
- System labels (like
Save
buttons)
The Admin UI is not localized, it's English only.
TODO:
History
- Introduced in 2sxc 2 ca. 2012
- ...
- Auto-Translate Content added in v15
Shortlink: https://go.2sxc.org/translate