Languages and localisation#
Two different things. A language is the language of the texts. A localisation is how numbers, dates and currency are written.
Find them under Systém → Jazyky and Systém → Lokalizace.
Language#
| Field | Note |
|---|---|
| Name | Czech, English |
| Code | cs, en — used in addresses |
Localisation#
| Field | Note |
|---|---|
| Name | the designation |
| Language | which language it belongs to |
| Currency | the default currency |
| Locale code | cs_CZ, en_GB |
| Date format | long and short |
| Thousands and decimal separator | |
| Decimal places | |
| Currency symbol position | before or after the amount |
| Negative sign position | |
| Region and payment region | |
| Main | the default when nothing else is recognised |
| Active |
Why this is not part of the language
The same English is written with different dates and a different currency in Britain and in the United States. One language may therefore have several localisations.
A new language#
The order of the steps matters — the first two unlock everything else:
- Create the language with its code and a localisation for it.
- Arrange it with your administrator — without a change on the server a new language only takes effect partially (see below).
- Translate the pages — the ones that form the address: the e-shop, the classifieds, sign-in. Do this before anything else.
- Only then categories, products and the rest of the content.
- Check the administration and email texts.
An untranslated page brings down the whole branch of addresses beneath it
The address /en/eshop/… is composed of two layers: the first segment comes from a
page, the further segments from categories. Without a translated page the whole
path 404s, even if every category beneath it is translated. Hence step 3 before step
4 — there are far fewer pages and they unblock everything else.
Adding a language needs your administrator's involvement
For a new language to take effect, the system's internal state has to be rebuilt. Without that it behaves unpredictably: some things are translated and some are not, depending on what happened to be regenerated. Arrange it with your administrator in advance.
🔴 A missing translation can bring down a whole language version#
The gravest trap in the whole business of translating.
It is not merely an empty space
Where a translation is missing from something an address is built from, you do not get emptiness — the page errors out. For labels and body text it is only missing text; what decides is whether a link is composed from it.
For e-shop, classifieds, company directory and blog categories this is already handled
When a translation is missing there, the system falls back to another language and the
page works — the address will carry the Czech form under /en/ until you fill the
translation in. It does not hold universally, though: with a new or less common
content type, expect it and walk the main page types after adding a language, not just
the home page.
An empty translation is worse than none
Save an empty text and the system treats it as valid and does not fall back to the other language. The element then comes out with no name. Either translate it, or leave the field entirely untouched.
Number formats#
The difference between 1 234,50 Kč and 1,234.50 lies exactly here.
Check the format on a real document
The settings look right until you see them on an invoice. Issue a test one and go through the amounts.
A document remembers its format
An invoice records how it was formatted. Changing the localisation therefore does not change how old documents look — and that is right.
Disabling a language#
A localisation can be deactivated. It stops being offered.
The content in that language does not disappear
It stays stored, merely inaccessible. Switch it back on and it is visible again.