Hybris SOLR 分面索引 属性 未显示
Hybris SOLR facet indexed property not showing
我创建了一个新的 SOLR 索引 属性,它必须作为类别 a 方面:
INSERT_UPDATE SolrIndexedProperty; solrIndexedType(identifier)[unique = true]; name[unique = true]; type(code); multiValue[default = true]; facet[default = true]; facetType(code); facetSort(code); priority; visible; categoryField[default = true]; fieldValueProvider ; facetDisplayNameProvider ; topValuesProvider
; $solrIndexedType ; color ; string ; ; ; MultiSelectOr ; Alpha ; 4000 ; true ; ; colorCategoryNameValueProvider ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
我已经创建了自定义值提供程序:
<bean id="colorCategoryNameValueProvider" parent="abstractCategoryNameValueProvider">
<property name="categorySource" ref="colorCategorySource" />
</bean>
<bean id="colorCategorySource" parent="abstractCategorySource">
<property name="rootCategory" value="color" />
</bean>
我已经执行了一个完整的索引,并且我在 SOLR Admin 中看到填充了新的索引字段:
"color_string_mv":["MultiColor",
"Color"],
但是,当我转到 PLP/Grid 时,我只看到一个方面,即价格。
正如您在 impex 中看到的那样,SolrIndexedPropert isFacet 属性设置为 TRUE 并且也在 SOLR 数据库中填充,为什么 hybris 没有检测到这个方面并将其显示在店面中?
如果结果中的所有产品都具有相同的值或根本没有值,则不会显示该方面。只有当用户按它过滤时它会对结果产生影响时,该方面才会出现。你能检查一下是否是这种情况吗?
发现问题:
与 SolrIndexedProperty 一起,为了显示 facet,我必须添加 facets 属性为:
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
; categoryPath:$solrIndexedType ; ; ; Refine ; ; ;
; category:$solrIndexedType ; ; ; Refine ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
; brand:$solrIndexedType ; ; ; MultiSelectOr ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
; color:$solrIndexedType ; ; ; MultiSelectOr ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
; size:$solrIndexedType ; ; ; MultiSelectOr ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
我创建了一个新的 SOLR 索引 属性,它必须作为类别 a 方面:
INSERT_UPDATE SolrIndexedProperty; solrIndexedType(identifier)[unique = true]; name[unique = true]; type(code); multiValue[default = true]; facet[default = true]; facetType(code); facetSort(code); priority; visible; categoryField[default = true]; fieldValueProvider ; facetDisplayNameProvider ; topValuesProvider
; $solrIndexedType ; color ; string ; ; ; MultiSelectOr ; Alpha ; 4000 ; true ; ; colorCategoryNameValueProvider ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
我已经创建了自定义值提供程序:
<bean id="colorCategoryNameValueProvider" parent="abstractCategoryNameValueProvider">
<property name="categorySource" ref="colorCategorySource" />
</bean>
<bean id="colorCategorySource" parent="abstractCategorySource">
<property name="rootCategory" value="color" />
</bean>
我已经执行了一个完整的索引,并且我在 SOLR Admin 中看到填充了新的索引字段:
"color_string_mv":["MultiColor",
"Color"],
但是,当我转到 PLP/Grid 时,我只看到一个方面,即价格。
正如您在 impex 中看到的那样,SolrIndexedPropert isFacet 属性设置为 TRUE 并且也在 SOLR 数据库中填充,为什么 hybris 没有检测到这个方面并将其显示在店面中?
如果结果中的所有产品都具有相同的值或根本没有值,则不会显示该方面。只有当用户按它过滤时它会对结果产生影响时,该方面才会出现。你能检查一下是否是这种情况吗?
发现问题:
与 SolrIndexedProperty 一起,为了显示 facet,我必须添加 facets 属性为:
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
; categoryPath:$solrIndexedType ; ; ; Refine ; ; ;
; category:$solrIndexedType ; ; ; Refine ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
; brand:$solrIndexedType ; ; ; MultiSelectOr ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
; color:$solrIndexedType ; ; ; MultiSelectOr ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider
; size:$solrIndexedType ; ; ; MultiSelectOr ; ; categoryFacetDisplayNameProvider ; defaultTopValuesProvider