Configure facets and filters
Describes the various parts of the configuration elements related to facets and filters in Optimizely Customized Commerce.
The configuration file is located in the Configs_folder and is called _Mediachase.Search.Filters.config. The file contains the following elements:
- Filter is the Facet Group.
- Filter [field] is the name of the field/meta-field being filtered.
- Filter/Description contains the localized text for a facet group. This determines what is displayed at the top of the side menu.
- Filter/Values contains all facets for that facet group.
Each facet group should only have one type of facet. Facet types are described below.
- SimpleValue. A string value.
- [key]. Attribute is not used but should be lowercase.
- [value]. The lookup key value; must be lowercase.
- Descriptions [defaultLocale]. Specifies which localized description is used if no localization is specified.
- Description  [locale]. Specifies the culture code of the filter description.
- Description. The value to display in the SideMenu, based on the locale.
- PriceRangeValue. Price ranges.
- [key]. The lookup key value; must be lowercase. The options are under-number, number-number, and over-number
- [currency]. A three-character currency code that corresponds to the code selected in the tiered pricing collection of a SKU.
- [lowerbound]. The numeric lower end of the range.
- [upperbound]. The numeric upper end of the range.
- [lowerboundincluded]. Must be true or false. It indicates whether the lower-bound value is included in the filtered range. For example, if lowerboundincluded is set to true for a $200-$300 filter range, items that are exactly $200 are included in the results.
- [upperboundincluded]. Must be true or false. It indicates whether the upperbound value is included in the filtered range.
- RangeValue. Numeric ranges; values must be 0-10.
- This type matches a range of numeric values.
- This filter data type only supports values less than 10.
- If a numeric type like float or decimal is used in defining the meta-class, an additional attribute setting, you must use  numeric=*true*.
- You can use a string meta-field type. The numeric attribute is not relevant
- These values, including numeric values, are passed as string values to Lucene, which treats them as Double values.
- Attributes are a subset of the PriceRangeValue filter data type.
Example: Facets in the Optimizely Customized Commerce sample site.
<SearchConfig version="1.0">
<SearchFilters>
<Filter field="brand">
<Descriptions defaultLocale="en">
<Description locale="en">Brand</Description>
<Description locale="sv">Märke</Description>
</Descriptions>
<Values>
<SimpleValue key="Brand 0" value="Brand 0">
<Descriptions defaultLocale="en">
<Description locale="en">Brand 0</Description>
<Description locale="sv">Märke 0</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="Brand 1" value="Brand 1">
<Descriptions defaultLocale="en">
<Description locale="en">Brand 1</Description>
<Description locale="sv">Märke 1</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="Brand 2" value="Brand 2">
<Descriptions defaultLocale="en">
<Description locale="en">Brand 2</Description>
<Description locale="sv">Märke 2</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="Brand 3" value="Brand 3">
<Descriptions defaultLocale="en">
<Description locale="en">Brand 3</Description>
<Description locale="sv">Märke 3</Description>
</Descriptions>
</SimpleValue>
</Values>
</Filter>
<Filter field="color">
<Descriptions defaultLocale="en">
<Description locale="en">Color</Description>
<Description locale="sv">Färg</Description>
</Descriptions>
<Values>
<SimpleValue key="black" value="black">
<Descriptions defaultLocale="en">
<Description locale="en">Black</Description>
<Description locale="sv">Svart</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="white" value="white">
<Descriptions defaultLocale="en">
<Description locale="en">White</Description>
<Description locale="sv">Vit</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="red" value="red">
<Descriptions defaultLocale="en">
<Description locale="en">Red</Description>
<Description locale="sv">Röd</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="blue" value="blue">
<Descriptions defaultLocale="en">
<Description locale="en">Blue</Description>
<Description locale="sv">Blå</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="multi" value="multi">
<Descriptions defaultLocale="en">
<Description locale="en">Multi</Description>
<Description locale="sv">Multi</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="brown" value="brown">
<Descriptions defaultLocale="en">
<Description locale="en">Brown</Description>
<Description locale="sv">Brun</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="navy" value="navy">
<Descriptions defaultLocale="en">
<Description locale="en">Navy</Description>
<Description locale="sv">Marin</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="yellow" value="yellow">
<Descriptions defaultLocale="en">
<Description locale="en">Yellow</Description>
<Description locale="sv">Gul</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="green" value="green">
<Descriptions defaultLocale="en">
<Description locale="en">Green</Description>
<Description locale="sv">Grön</Description>
</Descriptions>
</SimpleValue>
</Values>
</Filter>
<Filter field="size">
<Descriptions defaultLocale="en">
<Description locale="en">Size</Description>
<Description locale="sv">Storlek</Description>
</Descriptions>
<Values>
<SimpleValue key="s" value="s">
<Descriptions defaultLocale="en">
<Description locale="en">S</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="m" value="m">
<Descriptions defaultLocale="en">
<Description locale="en">M</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="l" value="l">
<Descriptions defaultLocale="en">
<Description locale="en">L</Description>
</Descriptions>
</SimpleValue>
</Values>
</Filter>
<Filter field="top_category_name">
<Descriptions defaultLocale="en">
<Description locale="en">Top category</Description>
<Description locale="sv">Toppkategori</Description>
</Descriptions>
<Values>
<SimpleValue key="Mens" value="Mens">
<Descriptions defaultLocale="en">
<Description locale="en">Mens</Description>
<Description locale="sv">Män</Description>
</Descriptions>
</SimpleValue>
<SimpleValue key="Womens" value="Womens">
<Descriptions defaultLocale="en">
<Description locale="en">Womens</Description>
<Description locale="sv">Kvinnor</Description>
</Descriptions>
</SimpleValue>
</Values>
</Filter>
</SearchFilters>
</SearchConfig>
Related blog post: Configurable Optimizely Find Facets
Updated 9 months ago