Hybris Facet导航

时间:2014-02-28 08:29:54

标签: hybris

有没有人知道如何在产品列表页面上显示的Facet Navigation中添加其他属性?到目前为止,我只能选择价格范围,但我想添加品牌和其他过滤器,你知道如何通过hMC维护吗?我认为它与solr配置有关,但我对hybris来说还是新手......

5 个答案:

答案 0 :(得分:3)

最好的方法是看一下开箱即用的东西,例如电子商店,打开文件 /electronicsstore/resources/electronicsstore/import/sampledata/stores/electronics/solr.impex

在里面你会找到facet定义,例如这是Megapixles的一个方面定义:

INSERT_UPDATE SolrIndexedProperty;solrIndexedType(identifier) unique=true];name[unique=true];type(code);sortableType(code);currency[default=false];localized[default=false];multiValue[default=false];facet[default=false];facetType(code);facetSort(code);priority;visible;fieldValueProvider;customFacetSortProvider;rangeSets(name);$classAttributeAssignment
;electronicsProductType;Megapixel, 63          ;double;; ;    ; ;true;MultiSelectOr;Custom;1000;true;commerceClassificationPropertyValueProvider;numericFacetSortProviderDesc;MegaPixelRange;57:::Megapixel, 63::::

您需要记住的是,对于任何其他文字/原子的自定义类型,您需要创建自己的提供程序。对于每个基本的Literal / Atomic类型(String,double,integer,boolean),commerceClassificationPropertyValueProvider就足够了。

答案 1 :(得分:0)

There are two ways to do this
1.Impex: Go to solr.impex file and add the facet(=true) property to SolrIndexedProperty type header
Ex: INSERT_UPDATE SolrIndexedProperty;solrIndexedType(identifier)[unique=true];name[unique=true];type(code);sortableType(code);currency[default=false];localized[default=false];multiValue[default=false];facet[default=false];facetType(code);facetSort(code);priority;visible;fieldValueProvider;customFacetSortProvider;rangeSets(name);$classAttributeAssignment
;electronicsProductType;Megapixel, 63 ;double;; ; ; ;true;MultiSelectOr;Custom;1000;true;commerceClassificationPropertyValueProvider;numericFacetSortProviderDesc;MegaPixelRange;57:::Megapixel, 63::::


2.hmc: hmc --> System --> Facet Search --> SolrItemType --> select solritemtype --> add solrindexproperties --> select facet checkbox to true

答案 2 :(得分:0)

要添加品牌,名称,any_other_attribute等更多产品属性,您应该访问:

  

HMC>系统>构面搜索>索引类型

。用空白字段搜索。

现在选择**产品<Index TYPE>。现在,您可以在表格中查看所有产品属性。并且它们周围有一些复选框。

这些是产品内属性的搜索设置。

答案 3 :(得分:0)

不幸的是,你不能简单地通过HMC将新的 solrIndexedProperty 添加到 solrIndexedType 并希望它能够正常工作,它不会工作,因为你必须维护一些其他要点:

  1. 如果你的新属性是一个复杂的对象,例如(Brand,Price,Unite,...),你必须创建一个 Value Provider 来将该对象转换为一个简单的原始数据(string, int,double,...)并将其发送到solr进行索引,例如,Brand to Brand.name和Price to Price.formattedValue ...
  2. 然后,您必须通过 FacetPopulator 将新的 solrIndexedProperty 值公开给正面。

答案 4 :(得分:0)

如果您有hybris wiki访问权限,那么您可以轻松完成此操作。在商业方面,他们已经涵盖了方面搜索。请看看它。 https://wiki.hybris.com/display/R5T/Tweaking+SolR+Attributes+and+Facets