每个产品都有自定义字段选项。我可以在产品列表页面的每个产品项目上输出这些自定义字段吗?如果是这样,怎么样?我已经尝试在CategoryProductsItem.html中添加ProductOtherDetails和%% SNIPPET_ProductCustomFieldItem %%,但是我没有尝试输出任何项目。有关如何以及是否可能的任何建议或指示?
答案 0 :(得分:2)
截至2015年9月,您现在可以在任何呈现特定面板的各个项目的模板文件上访问%% GLOBAL_ProductCustomFields %%。例如:
-Sinippets / CategoryProductsItem.html用于类别列表页面 -Snippets / HomeFeaturedProductsItem.html用于特色产品面板
我建议将自定义字段名称作为类添加到每个字段以便于隐藏,并且在自定义字段发生更改时访问该值将不会通过以下方式访问它们:nth-child CSS会中断。您可以通过修改Snippets / ProductCustomFieldItem.html将自定义字段名称添加到CSS类或ID,如下所示:
<div class="DetailRow %%GLOBAL_CustomFieldName%%">
<div class="Label">%%GLOBAL_CustomFieldName%%:</div>
<div class="Value">
%%GLOBAL_CustomFieldValue%%
</div>
</div>
这样做,将在类别列表中的每个项目中以这样的方式输出。
上面,我使用自定义字段通过发货时间发送,以及“起始时间”,如果项目是具有较高价格子项的父项,则前置到列表页面价格。在我看来,这些功能大大增加了用户体验。
分面搜索(handlebars.js)
我建议将其添加到Panels / FacetedSearchProductGrid.html:
{{#each product.custom_fields}}
{{ id }} : {{ name }} : {{ value }}
{{/each}}
答案 1 :(得分:0)
这些过滤器将仅限于产品页面。解决它的唯一方法是使用jQuery将解决方案混合在一起,从产品页面获取有问题的项目。痛苦,但可以做不必要的努力。