Mar 14, 2011
(3 votes)

Changes to the EPiServer CMS Globalization

When I got back from parental leave about a year and ago back I took on some bugs that had to do with the globalization functionality in EPiServer CMS. While trying to reproduce the bugs and testing around some I found out that there were quite a few glitches, mostly in the UI, when getting into more advanced language settings. There was also some uncertainty how the language settings should be treated for different use cases. To remedy this we worked on clarifying the specifications for the multi language functionality. This resulted in some changes that are now ready to be released in the EPiServer CMS 6 R2 release.

The changes affects


  1. The page language settings/language settings UI.
    1. Made a clear distinction between settings that affects editors (available) and settings that affects the site (Replacement/Fallback language).
  2. Edit panel
    1. Fixed some glitches where the language selector would sometimes now sync with the actual content language.
    2. Added information messages for some language cases.
  3. Replacement language now also sets System and User interface language to the replacement language (but not content language).


Page language settings

The page language settings UI has gotten a layout and textual update to clarify the different settings. First of all, there are new headings to separate the “available language”-setting that only affects editors from the “replacement/fallback”-language settings that affects the site visitors. Here is a screen shot of the UI in EPiServer CMS 6 R2:


The connection between available languages and replacement languages has also been removed which makes is possible to set up replacement languages for all languages.

Edit panel updates

Edit panel has gotten some fixes and new functionality. First of all, there is informational messages when a page has language settings which affects the appearance of the page on the web site. This includes:

  1. The language does not exist for the page and is not visible on the web page.
  2. The language does not exist but is visible due to language settings.
  3. The language exists but is overridden due to replacement language settings.

Another change is that it’s now possible to preview a page that has no information for the selected language but is visible due to language settings. The following screen shot shows a page that does not exist for Swedish but is visible in English due to replacement language settings.



Replacement language updates

Replacement language now sets the System and User interface language to the replacement language. This means that translations and culture settings (like date/time formats) will appear with the replacement language’s culture settings. For a part of the site where replacement language has been set for all pages this means that this part of the site will appear the same way as if the user had visited the site in the replacement language. The only difference is that content language remains which means that pages that does not have a replacement language setting will appear in the original language (for instance a link outside the replacement language structure).

Changing this behavior

This behavior is implemented in the InitializeCulture method in EPiServer.PageBase. To turn this off you can either turn of the CultureSupport.OptionFlag in your page constructor or override the method for your page.

Mar 14, 2011


Eric Mar 14, 2011 02:13 PM

Awsome! thank you!! :)

Mar 16, 2011 01:01 PM

This rocks!! Thank you

Apr 4, 2011 03:41 PM

Good stuff. :)

Please login to comment.
Latest blogs
Optimizely PIM - Variant Management Overhaul & Rollout

Optimizely PIM has completely overhauled variant management with improved usability and support for variant swatches. In order to enable this...

Arthur Vander Voort | Feb 4, 2023

You Just Got Vectored! SVG Image Formats

 If you're reading this, then you've come across a need that nearly all Opti developers encounter in their careers; You need to display a vector...

Greg J | Feb 3, 2023 | Syndicated blog

CMS Core 12.12.0 delisted from Nuget feed

We have decided to delist version 12.12.0 of the CMS Core packages from our Nuget feed. As a consequence, we are also temporarily delisting version...

Magnus Rahl | Feb 3, 2023

How Optimizely Web Experimentation enables fast validation of design and UX changes

Ever wondered how to increase conversion rates and quickly validate design/UX alternatives to find the most impactful changes? I wrote a practical...

Jacob Pretorius | Jan 31, 2023