特定のタグだけを取り出した一覧を表示したい

トップページに、商品タグの中でも用途に関するタグだけを取り出して一覧表示して、「用途から探す」というコンテンツを作りたいです。

1商品に対し複数の用途を設定するため、メタフィールドではなくタグを使用して、

用途に関するものだけ、タグ名の後に「-use」を付けて分け、

-useの付いたタグだけを一覧表示するところまでは成功しました。

{% assign tag_list = "" %}

{% for product in collections.all.products %}
{% for tag in product.tags %}
{% if tag contains 'use' %}
{% assign tag_list = tag_list | append: "," | append: tag %}
{% endif %}
{% endfor %}
{% endfor %}

{% assign tag_list = tag_list | remove_first: "," %}
{% assign tag_array = tag_list | split: "," | uniq %}

## 
{{section.settings.title}}

{% for tag in tag_array %}
- #{{ tag }}
{% endfor %}

この後、現在「#(タグ名)-use 」となっている表示の、-useの部分を非表示にしようと

下記のサイトを参考にいろいろやってみたのですが、うまく組み込むことができません。

https://im-sosleepy.com/webproduction/product-tags/

どうすれば実現できるか、ご教示いただけますでしょうか。

もしもっとスマートな方法があるようでしたら、あわせてアドバイスをいただけると幸いです。

よろしくお願いいたします。

もっとスマートな方法、は私も思いつかないため、

「#(タグ名)-use 」となっている表示の、-useの部分を非表示にする方法、の方だけお知らせします。

こちらのコードを、

- #{{ tag }}

下記のようにしていただけば、実現できるかと思います。

- #{{ tag | replace:'-use','' }}

replaceフィルタの詳細(?)は下記です。

https://shopify.github.io/liquid/filters/replace/

ご参考まで。

(キュー田辺)

1 Like

これで十分です!助かりました。

ありがとうございました。