jonas.naslund@nansen.se
Feb 24, 2012
  3466
(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
Bypassing WAF Blocking in Optimizely CMS 11 with Custom Base64 Properties

Introduction As Optimizely developers, we frequently encounter requirements to allow editors to inject third-party scripts into the head or body of...

Amit Mittal | Mar 2, 2026

Inspect SaaS CMS Packages Without Losing Your Sanity (Package Explorer Update)

Optimizely export packages have quietly become more complex. Inline (nested) blocks in CMS 12 and PaaS solutions weren’t always displayed clearly,...

Allan Thraen | Mar 1, 2026 |

Unstoppable: Insights from Optimizely’s 2026 UK Partner day

Over 150 Optimizely partners met in Shoreditch for the 2026 London Partner Kick Off. The theme was very much Opal with a side order of Optimizely's...

Mark Welland | Feb 27, 2026

What you need to run better experiments today

A practical, end-to-end playbook for higher quality A/B tests: conditional activation, targeting, metrics, power, SRM, and decision discipline.

Hristo Bakalov | Feb 27, 2026 |