Hybris:将不同的 solr 方面组合在一个之下

Hybris: Combine different solr facet under one

我已经在产品属性上应用了 solr facet。

例如:产品可以是 Medicine(0/1) 或 Drug(0/1) 或 Poison(0/1)。 0 表示否,1 表示是。

这些是产品的不同功能,因此显示为不同的方面。可以将它们显示在一个方面而不是例如:"Type",在这三个 solr 方面 "Medicine"、"Drug"、"Poison" 应该显示如下:

Type
-----
Medicine (50)
Drug (100)
Poison (75)

不确定 Hybris,但您应该可以使用 facet queries。您将针对三个条件中的每一个进行一个方面查询。在 UI 中,您可以随意组织计数。

但是,我不确定为什么不能只有一个包含多值字段的类别字段,该多值字段包含 Medicine and/or Drug and/or Poison 值。然后在那个领域进行分面会给你带来故障。如果您的值不是以这种方式出现,您可以使用 copyField 或自定义 Update Request Processor chain 来操纵它们以合并到一个字段中。

这超级简单。只需为它制作一个 IndexedProperty "Type" 和一个新的自定义 ValueProvider。然后根据布尔标志提取这些值——必要时只需硬编码。不需要更复杂的东西。

我尝试了此处发布的解决方案,但它们不符合我的要求。我通过方面导航标记文件进行了更改,以将所有分类属性方面(药物、药物、毒药)置于单个方面(类型)下。