Linus Ekström
Mar 14, 2011
  10007
(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

The

  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:

PageLanguageSettingsUI

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.

EditPanelMultiLanguageInfo

 

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

Comments

Eric
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
Opti ID overview

Opti ID allows you to log in once and switch between Optimizely products using Okta, Entra ID, or a local account. You can also manage all your use...

K Khan | Jul 26, 2024

Getting Started with Optimizely SaaS using Next.js Starter App - Extend a component - Part 3

This is the final part of our Optimizely SaaS CMS proof-of-concept (POC) blog series. In this post, we'll dive into extending a component within th...

Raghavendra Murthy | Jul 23, 2024 | Syndicated blog

Optimizely Graph – Faceting with Geta Categories

Overview As Optimizely Graph (and Content Cloud SaaS) makes its global debut, it is known that there are going to be some bugs and quirks. One of t...

Eric Markson | Jul 22, 2024 | Syndicated blog

Integration Bynder (DAM) with Optimizely

Bynder is a comprehensive digital asset management (DAM) platform that enables businesses to efficiently manage, store, organize, and share their...

Sanjay Kumar | Jul 22, 2024

Frontend Hosting for SaaS CMS Solutions

Introduction Now that CMS SaaS Core has gone into general availability, it is a good time to start discussing where to host the head. SaaS Core is...

Minesh Shah (Netcel) | Jul 20, 2024

Optimizely London Dev Meetup 11th July 2024

On 11th July 2024 in London Niteco and Netcel along with Optimizely ran the London Developer meetup. There was an great agenda of talks that we put...

Scott Reed | Jul 19, 2024