Skip to content

Best Practices for Umbraco 6 Localization

Umbraco is a web content management system (WCMS) known as one of the simplest and most user-friendly tools for publishing web content. It is based on Microsoft ASP.NET technology and is considered the first open-source tool based on Microsoft ASP.NET for web content management.

As Umbraco is built on the Microsoft .NET framework, it inherits the localization and internationalization features from it. Also,the Umbraco CMS has a specific translator account and workflow that facilitates the translation process.


Setting Up Umbraco for Multilanguage Websites

There are two main approaches available to prepare Umbraco for multilanguage websites:

1. Multiple site structure: one website per language.

2. 1:1 structure: one website for all languages.

Both solutions have advantages and disadvantages, but the multiple sites approach is more widely used. The multiple sites solution provides more flexibility as the administrator can exclude content based on their needs and there is no obligation to translate everything.

I will explain how to set up the multiple-sites structure in the steps below.


Adding Target Languages to Umbraco:

1. log in as Admin.

2. From the sections panel, select Settings.

gpi-umbraco localization-1

3. From the Settings tree, select Languages.

gpi-umbraco localization-2

4. Right click the Languages node and select Create.

gpi-umbraco localization-3

5. Select the new target language and click Create.

gpi-umbraco localization-4

6. The language will then be available in the languages node.

gpi-umbraco localization-5


Duplicating the Source Website into Target Languages

As this approach has one website per language, it is necessary to duplicate the entire website for each target language installed.It is highly recommended to have all the source language sites up-to-date before duplicating the content. It is a very simple and easy process:

1. From the Sections panel, select Content.

gpi-umbraco localization-6

2. From the Content tree, select the source website.

gpi-umbraco localization-7

3. Right-click the website node and select Copy.

gpi-umbraco localization-8

4. From the Copy popup, select content as the root node for the new website and check “Relate copied items to original” to keep track between the source and copied website.

gpi-umbraco localization-9

5. The new website is now available in the Content tree.

gpi-umbraco localization-10

6. Select the copied website, right click and select Manage hostnames.

gpi-umbraco localization-11

7. In the Manage hostnames popup, add the domain name and target language. The dropdown list shows the enabled languages.

gpi-umbraco localization-12

8. There is one more configuration step needed to prevent page link conflicts between languages. Open the config file namedumbracoSettings.config (<installation path>/config/umbracoSettings.config.). Under the <requestHandler/> settings section, set the <useDomainPrefixes /> valueto true.

gpi-umbraco localization-13

Once the target language is set for a website, Umbraco will localize some available items to be in the target language, such as dates, currencies, and other regionally specific values.

Once the last step is completed, the Umbraco CMS is ready to support multilingual content.


Quick Tips:

  • Using the multiple websites structure is recommended over using the 1:1 structure.
  • By default, English (U.S.) is already installed in Umbraco, any other target language should be set up by the CMS administrator.
  • Use the dictionary for localizing static strings.
  • Check “Relate copied items to original” while copying the source website to track the content changes between the source and target languages.