首页 > 解决方案 > 如何在 Hybris 的前端显示 facet 值?

问题描述

我通过item.xml在ProductModel中添加了String类型的品牌属性。我需要为品牌创造一个方面。我有两个品牌——索尼和佳能。创建构面后,我可以在 UI 上看到“Shop by Brand”,但在其下找不到 Sony 或 Canon。

我使用的 impexes 是:

    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=true];facetType(code);facetSort(code);priority;visible;useForSpellchecking[default=false];useForAutocomplete[default=false];fieldValueProvider;valueProviderParameter;facetDisplayNameProvider;customFacetSortProvider;topValuesProvider;rangeSets(name)
   ;$solrIndexedType;brand;string;;;;;;Refine;Alpha;;true;true;true;springELValueProvider;


     INSERT_UPDATE SolrSearchQueryProperty; indexedProperty(name, solrIndexedType(identifier))[unique = true]; searchQueryTemplate(name, indexedType(identifier))[unique = true][default = DEFAULT:$solrIndexedType]; facet[default = true]; facetType(code); includeInResponse[default = true]; facetDisplayNameProvider;facetSortProvider;facetTopValuesProvider
                                 ; brand:$solrIndexedType                                        ;                                                                                                      ;                      ;          ;                                  ; 

有人可以指出我错过了什么吗?

标签: solrhybrissap-commerce-cloud

解决方案


要使品牌属性作为构面可用,需要遵循以下步骤:

  • 通过创建 SolrIndexedProperty 并将其与价值提供者关联,通过价值提供者将品牌​​属性索引到 SOLR
  • 索引后确保将数据发送到 SOLR 以获取相应的产品
  • 下一步是在 Bakcoffice 中进行构面设置(或者这也可以通过 solr.impex 在为自定义品牌属性创建 SolrIndexedProperty 标头 impex 时完成)
  • 在后台构面配置中编辑该属性并转到“构面设置”选项卡,这将使我们能够为自定义(品牌)属性定义构面,该属性可用于根据 PLP 或 SLP 中的构面值过滤结果。将“Facet”设置为“TRUE”或者这可以通过 impex 通过设置facet[default=true]来处理
  • 通过facetType(code)选择构面类型为“单选”或“多选”
  • 重新索引 Solr 和更改应反映在 Search 或 PLP

推荐阅读