Category Facet Inheritance

Category Facet Inheritance allows facet rules that are set on parent categories to cascade down to child categories in a hierarchical tree structure. You can also control inheritance settings at each category node of a category tree. This allows you to merchandise all your category pages efficiently at scale.

Facet Inheritance Scope


Facet Inheritance settings can be viewed and edited in the Dashboard under Search & MerchandisingCategoriesFacets under the Category Inheritance Manager tab.

19201920

Facet Inheritance settings can also be viewed, but not edited, in the Facet Rule Editor under Search & MerchandisingCategoriesFacetsFacet Rules.


Inheritance Settings


Facet Inheritance has three types of settings, which are described in the table below. You can control each setting individually for each category.


Facet Inheritance settingDescriptionDefault value
Pass DownAllows this category’s facet rules to be passed down to be inherited by any of its child categories.Off
Receive FromAllows this category to inherit facet rules from parent and ancestor categories with Pass Down = On.On
Pass ThroughAllows the inheritance chain to continue through this category tree.On

In the Dashboard, you can control each of the Facet Inheritance settings for each category, as shown below. 

This Facet Inheritance setting is On (blue switch to the right).

7171

This Facet Inheritance setting is Off (white switch to the left).

7171 19201920

More details about the Dashboard interface are available in the Dashboard Controls page.


Example 1: Pass Down

Suppose you have a category branch that uses the default Facet Inheritance settings:

19201920

With the default settings, no facet rules are passed down. Category 1 has the price facet boosted, but does not pass down this rule to its child categories. You can use the Pass Down setting (default: No) to allow a parent category’s facet rules be passed down the category branch. 

Let see what happens if you set Pass Down = On for Category 1:

19201920

By default, categories can receive facet rules from parent categories and all ancestors. Therefore, Category 1’s price facet boost is passed down to Category 2, 3, and 4.


Example 2: Receive From

What if you wanted to turn off inheritance for certain categories? You can use the Receive From setting (default: On) to control whether the category inherits facet rules from parent categories and ancestors that have Pass Down = On. 

For example, suppose Category 1 has Pass Down = On, and Category 2 has Receive From = Off:

19201920

Category 2 cannot receive any facet rules, so it does not inherit the price facet boost from Category 1. Category 3 and Category 4 can receive facet rules, so they inherit the price facet boost from Category 1.


Example 3: Pass Through

What if you want facet rules to be passed down to a specific level only? Suppose you want Category 2 to inherit from Category 1, but you do not want Category 3 or 4 to inherit from Category 1. You could set Receive From = Off for Category 3 and 4: 

19201920

With these settings, Category 3 and 4 will not inherit from Category 1, but they also would not inherit from Category 2. The Receive From setting can achieve the results you wanted here, but it does not allow you to inherit from other levels as well.

Instead, you can use the Pass Through setting (default: On) to control whether inheritance chains can continue through a node. Let see what happens if you set Pass Through = Off for Category 2:

19201920

Category 2 inherits the price facet boost from Category 1 while Category 3 and 4 do not, even though they have Receive From = On. If you created a facet rule at Category 2 and set it to Pass Down = On, then Category 3 and 4 would be able to inherit the rule from Category 2.


Use Cases


For more advanced examples, continue reading in the Use Cases section.


FAQ


How does Facet Inheritance interact with targeting?

A category with Pass Down = On will only pass the default rule, and not the targeting rule.

How does Facet Inheritance interact with scheduling?

Inheritance respects scheduling. A category with Pass Down = On will pass down scheduled rules and follow scheduling guidelines. When a parent category has a new schedule rule come into effect, the child categories can also inherit it.

How does Facet Inheritance behave when categories change in the feed?

Feed changeFacet Inheritance behavior
New category, no parentsStarts with default Facet Inheritance settings
New category, has parentsInherits parent’s Facet Inheritance settings, reevaluate Facet Inheritance based on the new path
Category moved within current category treeKeeps existing configurations, inherited configurations for this node are erased, inherits new parent settings

 

Former and current child categories will be updated, reevaluate Facet Inheritance based on the new path
Deleted categoryReevaluate Facet Inheritance for child categories based on the new path

🚧

Introducing unclean category data can cause issues in updating the category tree with new categories. However, the existing category inheritance settings will still apply to the non-updated category trees.