A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Graham Carr
Dec 16, 2025
  331
(3 votes)

A day in the life of an Optimizely OMVP - OptiGraphExtensions v2.0: Enhanced Search Control with Language Support and Synonym Slots

Supercharge your Optimizely Graph search experience with powerful new features for multilingual sites and fine-grained search tuning.

As search continues to be a critical component of any digital experience, I am excited to announce version 2.0 of OptiGraphExtensions - an open-source add-on for managing Optimizely Graph search enhancements directly from the CMS admin interface. This release brings significant new capabilities that give content teams unprecedented control over how search works across different languages and markets.

WHAT'S NEW IN VERSION 2.0

1. Language Routing for Synonyms

One of the most requested features has been proper support for multilingual synonym management. In version 2.0, synonyms can now be configured per language, ensuring that search enhancements are contextually appropriate for each market.

Why does this matter?

Consider a global e-commerce site selling clothing. In English, you might want "jumper" and "sweater" to be synonyms. But in British English, "jumper" means something quite different than in American English - and in other languages, these terms don't translate directly at all.

With language routing, you can now:

- Create language-specific synonym sets (e.g., English synonyms, Swedish synonyms, German synonyms)
- Sync synonyms to Optimizely Graph grouped by language
- Filter and manage synonyms by language in the admin interface
- Ensure search relevance is optimised for each locale

How it works:

When syncing to Optimizely Graph, synonyms are grouped by their assigned language and sent using the language_routing parameter:

    PUT {gatewayUrl}/resources/synonyms?language_routing=en&synonym_slot=ONE

This means your Swedish customers searching for "bil" won't accidentally get results influenced by English synonyms for "car".

2. Synonym Slots for Advanced Configuration

Version 2.0 introduces Synonym Slots - a powerful feature that allows you to maintain multiple synonym configurations per language. Optimizely Graph supports two synonym slots (ONE and TWO), and our add-on now gives you full control over both.

Use cases for Synonym Slots:

- A/B Testing: Test different synonym strategies by using Slot ONE for your control group and Slot TWO for a variant

- Seasonal Campaigns: Keep your standard synonyms in Slot ONE while using Slot TWO for campaign-specific terms

- Department Separation: Use different slots for different product categories or business units

- Gradual Rollout: Test new synonym mappings in Slot TWO before promoting them to Slot ONE

In the Admin Interface:

The synonym management screen now includes a slot selector dropdown, making it easy to:

- Assign new synonyms to either Slot ONE or Slot TWO
- Filter the synonym list by slot
- Sync synonyms to Graph by language AND slot combination

GETTING STARTED

Installation

Run the following command to install the NuGet package:

   dotnet add package OptiGraphExtensions

Configuration

Add the following to your Program.cs or Startup.cs:

    services.AddOptiGraphExtensions(options =>
    {
        options.ConnectionStringName = "EPiServerDB";
    });

    app.UseOptiGraphExtensions();

Accessing the Admin Interface

Navigate to your CMS admin area and find "Opti Graph Extensions" in the menu. You'll see options for:

- About: Overview and quick links
- Synonyms: Manage synonyms with language and slot support
- Pinned Results: Control which content appears for specific searches

REAL-WORLD EXAMPLE: MULTILINGUAL E-COMMERCE

Let's walk through a practical example of setting up search enhancements for a multilingual e-commerce site operating in English, Swedish, and German.

Step 1: Configure English Synonyms (Slot ONE)

    Language: en
    Slot: ONE
    Synonyms:
    - laptop, notebook, portable computer
    - phone, mobile, smartphone, cell phone
    - TV, television, telly

Step 2: Configure Swedish Synonyms (Slot ONE)

    Language: sv
    Slot: ONE
    Synonyms:
    - dator, laptop, bärbar dator
    - telefon, mobil, smartphone
    - TV, television

Step 3: Sync to Graph

Click "Sync All to Graph" on each management screen, or sync per-language for more control.

MIGRATION FROM VERSION 1.X

If you're upgrading from version 1.x, the migration is straightforward:

1. Update the NuGet package to version 2.0

2. Existing synonyms will default to Slot ONE and retain their existing language settings

3. No breaking changes to the API or configuration

CONCLUSION

OptiGraphExtensions v2.0 represents a significant step forward in giving content teams control over their Optimizely Graph search experience. With language routing, synonym slots, and stop words management, you now have the tools to create truly localised, highly relevant search experiences for your users.

The add-on is open source and available on NuGet. I welcome contributions, feedback, and feature requests from the community.

Links:

- NuGet Package: https://www.nuget.org/packages/OptiGraphExtensions/
- Optimizely Graph Synonyms API: https://docs.developers.optimizely.com/platform-optimizely/reference/upsert-synonymhandler

Happy searching!

Graham Carr, Solutions Architect

I am an experienced Solutions Architect with over 28 years’ experience in a wide range of products and technologies. I have helped companies deliver their digital vision from concept all the way through to delivery. I have a particular passion for DXPs (Digital Experience Platforms) and am a certified developer for Optimizely as well as a Platinum OMVP.

Dec 16, 2025

Comments

Please login to comment.
Latest blogs
Building an custom Optimizely Opal tool with OCP SDK

Recently I have been working on some custom Opal tools and when looking on hosting options it was a no brainer to utilise Optimizely's OCP platform...

JSpencer | Jan 8, 2026

Event Mechanism on Contact Creation in Optimizely Commerce 14

In Optimizely Commerce 14, there is no traditional event or callback exposed for customer contact creation or updates. Instead, contact lifecycle...

Francisco Quintanilla | Jan 7, 2026 |

A day in the life of an Optimizely OMVP - Introducing Webhook Management in OptiGraphExtensions v4 for Optimizely CMS 12

The OptiGraphExtensions add-on has just received a significant update that many in the Optimizely community have been waiting for: comprehensive...

Graham Carr | Jan 7, 2026

Climbing the Relevancy Ladder: Unlocking Vertex AI Search Tiers in Commerce Search v3

Author: Naveen Samala, Staff Software Engineering at Optimizely What If Your Search Could Predict What Each Customer Will Buy? Imagine a search...

Patrick Lam | Jan 6, 2026