Jeff Wallace
Nov 18, 2011
visibility 3782
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
Copies vs. Connections: Modeling Content Areas for Multilingual Success

Starting With the Simple Question Most multilingual content modeling conversations start with a deceptively simple question from a client: "If we s...

Vipin Banka | Aug 23, 2026

Content Transfer coming to Optimizely SaaS CMS

Back in June I released Content Transfer on the Optimizely nuget feed – today I’m releasing version 1.0 , because we’ve had it running out in the...

Matt Pallatt | Aug 23, 2026

Improving Optimizely Product Information in LLM Tools

Tools like Claude Code can be great for working with Optimizely CMS, but when they index outdated or incomplete information about developing a...

Nicholas Sideras | Aug 21, 2026 |

How to Get a Bacpac Out of DXP (And Never Do It By Hand Again)

Every Optimizely DXP project eventually runs into the same task: getting production data onto a local machine so you can actually troubleshoot...

KennyG | Aug 20, 2026

Error FK_tblContentSoftlink_tblPropertyDefinition in CMS

Example Error :  Microsoft.Data.SqlClient.SqlException (0x80131904): The DELETE statement conflicted with the REFERENCE constraint "FK_tblContentSo...

Vinit Gavankar | Aug 20, 2026

Get count of pages, blocks , Assets from the CMS.

The following queries retrieve details from the CMS database. Make sure to try these queries locally first.    Step 1 — Discover your content type...

Vinit Gavankar | Aug 20, 2026