jonas.naslund@nansen.se
Feb 24, 2012
  3438
(2 votes)

Commerce manager - Language filtering

Having multiple clients that need to utilize the globalization support in EPi Commerce we jumped on the filtering solution Jacob Khan put together here. Rendering all the meta properties for each language makes the UI for editing an entry a bit confusing so being able to filter per language is great.

There is another issue and perhaps more critical one that comes with having a large amount of languages active for a catalog. With 15 - 20 languages active, each having a quite large amount of properties there's a huge performance issue. The view for editing the entry takes a couple of minutes to load.

Once we got the filtering addition up and running it looked great, however there was an issue with it . Once we've saved an entry, only the last saved language would have values in it's meta fields when retrieved using the catalogContext. All the values were saved OK in the database but they just weren't delivered through the API. The issue was the field "SerialiedData" which turned out to contain data only for the latest saved language. So Jenny and I sat down to see if we could figure out what

The reason for this was that when filtering the collection with languages to render property controls for, the same collections was used by the control

/apps/shared/cores/metadata/EditTab.ascx

for which languages to save as well.

What we ended up doing was keeping two collections, one for the ui rendering and then the original one for saving the meta data. Then modifying the EditTab.ascx so that it renders based on our filtered UI collection array and saves based on the originial one.

I’m attaching the code we’re using for the language filtering for reference.

 Installation:

To install 3 steps:

1. Add the EntryOveriewTab.ascx to
C:\EPiServer\eCommerceFramework\5.2\[Site Name]\Shared\Apps\Catalog\ExtensionTabs\
!Note the folder doesnt exist and needs to be created

2. Add the EditTab.ascx to 

C:\EPiServer\eCommerceFramework\5.2\[Site Name]\Shared\Apps\Core\ExtensionMetaData\.

3. To enable the feature the dll needs to be placed in the site bin of the commerce manager site

4. Add the new Product-Edit.xml and the Variation-Edit.xml
C:\EPiServer\eCommerceFramework\5.2\[Site Name]\Shared\Apps\Catalog\Config\View

\Variation-Edit.xml
and
\Product-Edit.xml

Download the code

Feb 24, 2012

Comments

Jacob Khan
Jacob Khan Feb 24, 2012 04:35 PM

How about a screenshot?

Please login to comment.
Latest blogs
Graph access with only JS and Fetch

Postman is a popular tool for testing APIs. However, when testing an API like Optimizely Graph that I will be consuming in the front-end I prefer t...

Daniel Halse | Feb 4, 2026

Best Practices for Implementing Optimizely SaaS CMS: A Collective Wisdom Guide

This guide compiles collective insights and recommendations from Optimizely experts for implementing Optimizely SaaS CMS, focusing on achieving...

David Knipe | Feb 4, 2026 |

A day in the life of an Optimizely OMVP: Learning Optimizely Just Got Easier: Introducing the Optimizely Learning Centre

On the back of my last post about the Opti Graph Learning Centre, I am now happy to announce a revamped interactive learning platform that makes...

Graham Carr | Jan 31, 2026

Scheduled job for deleting content types and all related content

In my previous blog post which was about getting an overview of your sites content https://world.optimizely.com/blogs/Per-Nergard/Dates/2026/1/sche...

Per Nergård (MVP) | Jan 30, 2026