在Shopify中,我希望在没有产品的级别上提供标签,以便我可以使用标签过滤。
例如,在销售珠宝的网站上,这是层次结构:
level 0: homepage (rings, earrings, pendants, or the-john-smith-collection)
level 1: grid of top level collection (earrings, for example)
level 2: grid of sub-collection (model-123) of earrings
level 3: grid of all earrings of model-123
level 4: product page for earring-xyz of model-123
据我所知,我可以通过3级标签进行过滤而不会出现问题,因为我正在查看某个类别中的一堆产品。
我的问题是 - 是否有任何方法可以访问第2级中每个模型(子集合)中所有产品的所有标签。我有一个包含一堆子集的集合,但是没有实际产品,但我希望能够按照这些子集合中所有产品的标签进行过滤,因此我可以执行以下操作:
From the homepage, select the "rings" collection
See the rings category - a grid of 20 different sub-collections
Have a side filter menu, from which I'm able to click "see only rings tagged with "amethyst"
Be taken to a grid of all products matching those tags
有什么想法吗?
答案 0 :(得分:0)
不确定您是否仍在寻找此问题的答案,但这可以在Shopify中使用。
我最近遇到了Shopify的内置免费主题之一New Standard,可以在收藏页面下的自定义面板中找到,"显示按标签浏览& #34;
但是,我还在Shopify上找到了this article,它向您展示了如何在您自己的下拉列表中编程,可以按标签浏览。此代码仅在选择了一个集合后才能使用。
<script>
/* Product Tag Filters - Good for any number of filters on any type of collection pages */
/* Brought to you by Caroline Schnapp */
var collFilters = jQuery('.coll-filter');
collFilters.change(function() {
var newTags = [];
collFilters.each(function() {
if (jQuery(this).val()) {
newTags.push(jQuery(this).val());
}
});
if (newTags.length) {
var query = newTags.join('+');
window.location.href = jQuery('{{ 'tag' | link_to_tag: 'tag' }}').attr('href').replace('tag', query);
}
else {
{% if collection.handle %}
window.location.href = '/collections/{{ collection.handle }}';
{% elsif collection.products.first.type == collection.title %}
window.location.href = '{{ collection.title | url_for_type }}';
{% elsif collection.products.first.vendor == collection.title %}
window.location.href = '{{ collection.title | url_for_vendor }}';
{% endif %}
}
});
</script>
&#13;
<div class="clearfix filter">
<p>Browse by tag:</p>
<select class="coll-filter">
<option value="">All</option>
{% for tag in collection.all_tags %}
{% if current_tags contains tag %}
<option value="{{ tag | handle }}" selected>{{ tag }}</option>
{% else %}
<option value="{{ tag | handle }}">{{ tag }}</option>
{% endif %}
{% endfor %}
</select>
</div>
&#13;
祝你好运,我希望这对你有用!