How to Manage Multilingual Catalogs

You can create a catalog on your Web site that stores product information in multiple languages. For example, you may want to display product information in English, Spanish, and Chinese. To create a multilingual catalog, create a catalog and add the languages the catalog is to support. For more information about how to create a catalog, see How to Create a Base Catalog by Using the Catalog API.

Multilingual Properties

Each multilingual property in a catalog has a separate value for each language in the catalog. Any method that returns these properties returns them in the current language of the catalog.

To create a multilingual property, create a property and set its LanguageSensitive property to true. The following example shows how to create a multilingual property.

private void CreateMultilingualProperty(CatalogContext catalogContext)
{
    CatalogProperty catalogProperty = catalogContext.CreateProperty("CustomProperty", CatalogDataType.String, 100);
    catalogProperty.Information.CatalogProperties[0].LanguageSensitive = true;
    catalogProperty.Information.CatalogProperties[0].DisplayName = "Property Displayname";
    catalogProperty.Information.CatalogProperties[0].IsFreeTextSearchable = true;
    catalogProperty.Save();
}

After you set the LanguageSensitive property and it has been used in a catalog, you cannot change it.

The language property of the EnumerationPropertyValues property is not required and is not validated.

Specifying Languages in Catalogs

The default language is the language in which the catalog is created. You can change the default language at any time.

The active language is the language in which the catalog is displayed. You specify the active language when you get a catalog by using the GetCatalog method on the CatalogContext object. You can also set the active language by using the ActiveLanguage property on the ProductCatalog object.

In this Section

See Also

Other Resources

Managing International Catalogs