Multilingual Sites

YOOtheme Pro is multilingual-ready. With its modern language switcher, building multilingual websites in Joomla is easier than ever.

Joomla supports multilingual sites out of the box. Just install the needed languages in Joomla, duplicate and translate articles, menu items and modules, and assign them to the corresponding language. Add a language switcher to switch between these content translations. If some content is missing for a language, the assigned article or module of the default language will be shown. Learn more in the official Joomla documentation. Alternatively, use Falang or other multilingual extension to simplify the translation process.


Language Switcher

YOOtheme Pro provides a language switcher that seamlessly integrates into the main navigation or any other Joomla menu. The active language is shown as a parent item, with all available languages listed as submenu items.

To add a language switcher, simply create a new menu item in the Joomla menu manager, select System Links → URL as menu item type and enter #language-switcher as the link.

Language switcher

The language switcher is just like any other menu item. It inherits all menu position options and has all menu item options, for example, to add a globe icon next to the active language.

The language switcher menu item has additional layout options. Render the active language as a parent item with a list of all languages as submenu items to show the language switcher together with other menu items. Alternatively, render each language next to each other as top-level menu items, for example, to create a dedicated menu. Optionally, exclude the active language from the language list and show full language names instead of abbreviations.

Language switcher

Instead of the YOOtheme Pro language switcher, you can also use the Joomla language switcher module, which comes with its own options.


Translate Pages

Create multiple versions of the page for each language. Use one of the following two options:

  • Duplicate the existing article and assign it to the new language.
  • Save the existing layout in the YOOtheme Pro layout library. Then create a new empty article, assign it to a language and import the saved layout from the library.

Assign each page to a language and translate it. Make sure to have one version for each language.

Note At the moment, the content fields are not extracted and cannot be translated separately from the page builder settings. This means if you change the settings in the page builder, you have to change them for every translation. That's why it's recommended to translate pages in the final step. We hope to have a better solution in the future. The only exception is Falang where content fields can be translated on the same page.


Translate Modules

Translating modules works the same as with pages. Create multiple versions of the module, assign them to a language and translate them.

Multilingual Menus

YOOtheme Pro integrates the concept of menu positions in Joomla. However, these menu positions cannot be used for multilingual sites. Instead, just use Menu modules and publish them in the navbar, dialog, navbar-mobile or dialog-mobile position.

YOOtheme Pro provides the footer builder to add a footer to all pages. However, the footer builder cannot be used for multilingual sites. Instead, just use Builder Modules and publish them in the bottom position.


Translate Language Strings

YOOtheme Pro uses multiple language strings within its templates. For example, the read more link shows the text Continue Reading. YOOtheme Pro is translated into more than 20 languages, and each of these language files contains translations of the language strings. To help translate YOOtheme Pro to your language, refer to the translation documentation.

The language files can be found in the YOOtheme theme folder in language/.


Override Language Strings

Joomla allows you to easily override a specific language string without modifying any language files. Overrides can be created and managed in System → Language Overrides. Select a language, for example English (United Kingdom) - Site and create a new override. Learn more in the official Joomla documentation. To find all language strings defined by YOOtheme Pro, just search for the TPL_YOOTHEME constant.

Override language strings

Joomla stores custom language overrides in dedicated language files located in the language/overrides/ directory, with one file per language. This also makes it possible to manually copy language strings from the YOOtheme Pro language file into an override file. For example, copy strings from templates/yootheme/language/en-GB/en-GB.tpl_yootheme.ini to language/overrides/en-GB.override.ini. This approach allows all strings to be translated at once in a code editor. The resulting override file can then be reused by copying it to another Joomla installation.

Create New Language Strings

Apart from the predefined YOOtheme Pro language strings, you can create new language strings yourself. This allows you to translate any custom content within YOOtheme Pro, for example, the logo text or the newsletter messages.

Here is a short example on how to translate the logo text:

  1. Enter the language constant TPL_YOOTHEME_LOGO_TEXT to the Logo Text field. The language constant needs to be uppercase and without spaces.
  2. Create a new override in System → Language Overrides and use the TPL_YOOTHEME_LOGO_TEXT as language constant to translate it for all your languages.
YOOtheme Pro Documentation