JEM translations are managed on Transifex. Translators can work online without editing language files manually, and released translations are later bundled into JEM language packs.
Transifex is used to translate JEM interface strings. It does not translate your own event content, venue descriptions, menu items, articles, or category names.
JEM Translation Project
The public JEM translation project can be found on Transifex:
When a JEM release is prepared, translations are exported from Transifex and packaged as downloadable JEM language packs.
Choose the translation project or resource that matches the JEM version you want to translate. JEM 4.5.0 and JEM 5.0.0 may have different strings, so translations should be checked against the correct release line.
Join a Language Team
Translations are organized by language teams. To contribute translations, join the team for your language first.
- Create a Transifex account.
- Log in to Transifex.
- Open the JEM project page.
- Select the JEM project or release line you want to help with.
- Open the list of languages.
- Select your language and request to join the language team.
If your language is not listed, request a new language in Transifex. A project maintainer may need to approve it before translations can start.
Translate JEM Strings
After joining a language team, open your language and select one of the available resources. Each resource usually corresponds to a Joomla language file used by the JEM component, a module, or a plugin.
- Open the JEM project in Transifex.
- Select the correct language.
- Select a resource, such as a component, module, or plugin language file.
- Open the translation editor.
- Translate the untranslated strings.
- Save your work in Transifex.
- Repeat the process for other resources in the same language.
Translation Guidelines
JEM language files follow Joomla INI language-file rules. A small syntax error can break one or more translated strings, so keep the structure close to the original English text.
- Keep placeholders such as
%s, %d, and numbered placeholders unchanged.
- Keep HTML tags that are present in the original string, unless the translation clearly does not need them.
- Use valid HTML where the original string contains markup.
- Do not translate language constants such as
COM_JEM_EVENT; translate only their text value.
- Keep punctuation and spacing natural for your language.
- Check frontend and administrator context where possible before choosing final wording.
Quotes and Line Breaks
Joomla language strings are sensitive to quotes and line breaks. When in doubt, follow the structure used in the original English string.
- Avoid unescaped double quotes inside translated strings.
- Use single quotes inside translated text when quotes are needed.
- Do not split one translation string across several lines.
- Use
<br /> if the original text requires a visible line break.
Do not create translations with broken HTML or unfinished placeholders. A translated string can look correct in Transifex but still fail in Joomla if the INI syntax, placeholders, or markup are invalid.
Good Translation Practice
- Translate short interface strings consistently across JEM.
- Use the same term for event, venue, category, registration, waiting list, and attendance throughout the translation.
- Keep button labels short where possible.
- Check whether the string is used in the administrator, frontend, email, or module output.
- Review similar translated strings before adding a new term.
- Leave a string untranslated if you are unsure and need another translator to review it.
From Transifex to Language Packs
Transifex is the working area for translators. Users normally install translations through official JEM language packs downloaded from the JEM website.
- Translators update strings in Transifex.
- Maintainers review or export the translations.
- The exported language files are included in a JEM language pack.
- Site administrators install the language pack with the Joomla installer.
A translation completed in Transifex is not automatically installed on existing Joomla sites. The site still needs the matching JEM language pack after it is released.
Testing a Translation
After installing a language pack, check both frontend and administrator pages.
- Open the JEM dashboard and settings in the administrator.
- Check event, venue, category, type, registration, and attachment screens.
- Open frontend event lists, event details, venue views, calendars, and user-area pages.
- Check published JEM modules.
- Check JEM emails if the Mailer plugin is used.
- Check whether long translated text still fits in buttons, table headings, and compact module layouts.
When to Use Language Overrides
Transifex should be used for translations that are useful to all JEM users. Joomla language overrides should be used for site-specific wording.
- Use Transifex to improve the official translation.
- Use Language overrides to change wording only for one specific website.
- Do not edit installed JEM language files directly, because updates can overwrite them.
Common Problems
A translated string still appears in English
- The string may not be translated yet.
- The installed language pack may be older than the JEM version.
- The string may belong to another resource, such as a module or plugin.
- The Joomla language may not be active for the site or administrator area.
A language constant is displayed
A visible constant such as COM_JEM_EXAMPLE_TEXT usually means the translation string is missing or the language file containing it was not loaded. Check the matching resource and language pack version.
A translated page layout looks broken
- Check for broken HTML in the translated string.
- Check whether the translation is much longer than the original string.
- Check old template overrides that may not fit newer translated labels.
Related Documentation