Umbraco is a web content management system well known for being one of the simplest and user-friendly tools used for publishing web content. The Umbraco open source CMS version 2.0 was released on FEB 2005 and since that time there has been a lot of enhancements and add-ons added.
Umbraco is based on Microsoft ASP.NET technology and is considered as the first open source tool based on Microsoft Asp.net for Web content management.It is the official ASP.NET website for Microsoft (www.asp.net) along with more than 100,000 reputable companies also using it.
As Umbraco is built on 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 process of translation and workflow to and from translators and translation agencies.
Setting up Umbraco for Multilanguage websites
There are two main approaches to prepare Umbraco for managing multi-language websites:
- Multiple sites structure: One website per language
- 1:1 structure: One website for all languages
Both solutions have advantages and disadvantages. In reality, the multiple sites approach is widely used over the 1:1 structure. The multiple sites solution prov,ides more flexibility as there is no obligation to translate all content, but the administrator can exclude some content based on his business needs / audience culture, etc…
FIRST STEP: Add the target languages to the CMS: (English US is installed by default):
1- Login as Admin
2- From Sections Panel select Settings
3- From Settings Tree select Languages
4- Right click the Languages node and select Create
5- Select the new target Language and click Create
6- The Language will be then available in the languages node
7- To delete a Language select it, right click and press Delete.
SECOND STEP: Duplicate the source website (one new website per target language)
Once the Source website is ready with all the content, duplicating the website for localization is a very simple and easy process:
1- Login as Admin
2- From the Sections panel select Content
3- From the Content Tree select the source website
4- Right click the website node and select Copy
5- 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 source and copied website.
6- The new website is available now in the content tree.
STEP THREE: Set the target language for the copied website (same steps to be repeated per website / target language)
1- Select Copied website, right click and select Manage Hostnames
2- In the Manage hostnames popup add domain name and target language. The drop down list shows the current already enabled languages we set before.
3- One more configuration step is needed to prevent page links conflict between languages: Open config file named umbracoSettings.config (<installation path>/config/umbracoSettings.config.). Under <requestHandler /> settings section set the <useDomainPrefixes /> value to true
Once the target language is set for a website, by default Umbraco localizes some available items to be in the target language culture such as dates, currencies, and other regionally specific values. As mentioned before Umbraco is based on Microsoft ASP.NET and inherits its localization features.
By the end of this last step, the Umbraco CMS is ready to author and publish multilingual websites. The second phase will cover how to localize Dynamic and Static content.
Quick notes about setting up Umbraco for multi-language websites:
- Using multiple websites is recommended over using 1:1 structure.
- Umbraco comes with one language installed by default (English US). Any other target language should be set up by administrator from Settings section.
- To be able to tack the content changes between source and target languages, remember to check Relate copied items to original while copying the source website.
- Copied websites are not published until the administrator manually changes the status.