Wednesday, 24 September 2025

Master Language Switcher for Optimizely CMS

Master Language Switcher is an admin tool for Optimizely CMS 12 and 13 that helps teams change the master language of multilingual content more safely. It is designed for cases where you need to promote an existing language branch or convert the current master language to a new target language without manually working through content item by item.

For multilingual Optimizely solutions, this can save a significant amount of time and reduce the risk of mistakes when working across large content trees.

Why use Master Language Switcher

  • Switch - If the target language branch already exists, it becomes the new master language.
  • Convert - If the target branch does not exist, the current master language is converted and promoted to the target language.
  • Batch processing - Large content trees are processed in smaller batches for more controlled execution.
  • Clear feedback - Editors and administrators can review item-by-item results directly in the UI.

Supported content types

The tool can process the following content:

  • Pages - The selected root page and, optionally, its descendants.
  • Blocks - Blocks used inside page content areas.
  • Media - Media items when selected as the root or included through recursive hierarchy processing.

Important considerations

Important:
  • This tool updates content at database level and bypasses normal CMS editing safeguards.
  • Large operations may cause timeouts or database locks.
  • Run it during off-peak hours and always take a database backup first.
  • If changes do not appear immediately, clear any CDN or application cache and restart the site if needed.
  • If you use Optimizely Search & Navigation, reindex the content after the operation so search reflects the new master language.

Installation

Install the package from the Optimizely NuGet feed with:

dotnet add package A2Z.Optimizely.MasterLanguageSwitcher

How to use it

  1. Go to Admin > Tools > Master Language Switcher.
  2. Select the page or content root you want to process.
  3. Choose the target language.
  4. Optionally enable recursive processing to include child content.
  5. Click Change Language and review the live results in the UI.

Result feedback

The tool shows a clear results table after execution:

  • Each page, block, and media item is listed with its action and status.
  • Rows make it easier to spot switched, converted, skipped, or failed items.
  • A summary section shows totals for each result type.

Compatibility

This tool supports Optimizely CMS 12 and CMS 13. Check the package page and GitHub repository for the latest version details and updates.

Links

GitHub repository
NuGet package

FAQ

What is the difference between switch and convert?
Switch promotes an existing target language branch to master. Convert changes the current master language to the selected target language when that target branch does not already exist.

Is this safe for large trees?
It is designed to handle larger operations in batches, but you should still run it carefully, during quieter periods, and only after taking a backup.

Do I need to reindex after running it?
Yes, if you use Optimizely Search & Navigation, reindexing is recommended after the master language changes.

About the Author

Adnan Zameer, Principal Developer at Optimizely UK, is a certified Microsoft professional, specializing in web app architecture. His expertise includes Optimizely CMS and Azure, showcasing proficiency in crafting robust and efficient solutions.

0 comments :

Post a Comment