CMS UI localization
Hippo CMS is designed from the ground up to support internationally operating teams. The CMS enables users to efficiently maintain multiple translations of the same piece of content. But also the CMS UI itself can be fully translated. This page explains the concepts behind the localization of the CMS UI. For more information about how to setup Hippo for translations of content, see "Adding a new language to an already existing site."
When a user logs into Hippo CMS, they can choose their preferred language for the CMS UI. The different strings of text that are part of the UI are provided and translated using more than a single mechanism. Some strings are provided as part of the core product, whereas other strings are provided by project specific plugins or project configuration.
This page explains the following concepts:
- The different sources of strings
- The different translation mechanisms used by Hippo CMS
Sources of UI strings
The different strings that are visible in the UI can be provided by different sources. The Hippo CMS UI is by default available in several languages. Hippo ensures that all new functionality and all Hippo default and standard plugins are available in all these languages. It is possible, but a significant amount of work, to add additional translated languages. For more details, see "Configure the CMS login page."
The core product provides most strings that are visible in the UI. Most strings are provided through compile time resource bundles and several others through repository resource bundles. As Hippo is a very configurable and extensible product, also a lot of strings are visible that are not part of the core product. These strings are provided by two other sources: project configuration and plugins.
Project configuration provided strings
Many strings that are visible in the CMS UI originate from the content model and other configuration of a project. For example, the names of the document types and each field name and hint shown in the content editor can be translated, but also the strings that are displayed when custom validation errors occur.
For more details, see:
- How to customize the translations of document types and image sets
- How to configure and translate custom validators
- How to setup and translate custom Advanced Search filters
- How to control which document types can be used in which folder
These translations are managed technically using repository resource bundles.
Plugin provided strings
Hippo CMS can be extended as part of a project’s implementation in many ways. Each of the plugin mechanisms has been designed to use one of the available translation mechanisms.
For more details how to provide translation for common plugins, see:
- For strings displayed in channel and component configuration dialogs, see the example in Annotate Channel or Component Configuration Parameters with UI Directives, section “Localization”.
- For strings shown for custom targeting collectors, see this document, section “Example: GroupsCollectorPlugin”
- Targeting providers use compile-time resource bundles
These translations are managed technically by compile-time resource bundles.