Jeff Wallace
Optimizely
Nov 18, 2011
visibility 3843
star star star star star
(0 votes)

Filter Commerce SEO Tab Properties by Language

Based on CMS 6 R2 and Commerce R2 SP1

Recently Jacob Khan posted a blog and code for filtering the EPiServer Commerce product catalog /properties/metadata by language.  This is of course a fabulous enhancement and one that many customers will likely want to utilize to provide an improved user experience when editing the catalog.  I thought I’d take advantage of my colleague's good work and add the same for the SEO tab since it also contains properties differentiated by each language. 

 

In an ideal world I could have stolen the base of his code, implemented things in the same manner, and it simply would have worked.  Unfortunately since the SEO tab contains child controls in a placeholder I actually had to think about it for a minute and write a few more lines of code.  So much for just stealing from others and claiming glory in the blog post, even though that’s basically what I did, with a few extra bits of effort.  Smile  Anyway, alas it does indeed work.  I also created a language selector helper class for the dropdown so the two tabs in the UI can share this functionality.  The code is commented out with explanation where it differs from the core Commerce code.  If you intend to use it in a production environment you’ll probably want to remove this.

 

image

 

Note that just like Jacob's code, if you change languages in the drop down without saving, the previous languages updates will be lost.  So, in the current state you should select the OK button with each language change.  Some may not like this experience and you’re more than welcome to provide additional updates to this code and feed it back into the community. Winking smile  There’s different ways this could be handled but I’ll let you decide…unless a find a few more cycles to burn and tackle it myself.

 

Get the code here.  It includes Jacob's code as well as my own.  I’ve also included an updated ReadMe.txt file for the setup steps.

 

For a good introduction to customizing EPiServer Commerce, check out Roger Cevung's article. 

 

Please note, this is intended as a starting point for you to customize for your project needs. This code is provided “as is” without warranty or guarantee of operation. Use at your own risk. Good luck and enjoy!

Nov 18, 2011

Comments

Nov 18, 2011 12:19 PM

Fabulous!

error Please login to comment.
Latest blogs
Surviving a Dirty Feed. Part 3: Error Handling and Event Batching

Committing a 250,000-row Optimizely catalog import row by row, returning a per-row failure report, and coalescing catalog events into one per batch.

Stanisław Szołkowski | Oct 16, 2026 |

Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026

Cheapskate AI Translator: Because Translation Should Not Require a Second Mortgage

There is a particular kind of software project that begins with a detailed architecture document, a product roadmap, and a carefully assembled...

Linh Doan Cuu | Oct 15, 2026

Computed Fields in CMS 13 Content Contracts with Optimizely Graph

Content Contracts in Optimizely CMS 13 allow different content types to share a common structure when querying Optimizely Graph. But what if the...

Mardy | Oct 14, 2026