# 商品ページで商品につけたタグをラベルとして表示させたい

**URL:** <https://community.shopify.com/t/topic/233722>\
**Category:** 技術的なQ＆A\
**Created:** [July 18, 2023, 4:18pm UTC](https://community.shopify.com/t/topic/233722 "2023-07-18T16:18:52Z")\
**Posts on this page:** 3\
**Page:** 1

## AI-generated summary

商品ページの価格横に、商品タグをラベル表示させる実装についての質問です。

**目的：**
- Dawnテーマを使用
- 「セール」ではなく、タイミングに応じて「早割」「超早割」など、カスタムタグを表示したい

**初期の問題：**
質問者が `card_product.tags` を使用したコードを試したが、表示されなかった。

**解決策：**
ogasawarakyohei氏が以下を指摘：
- `card_product` はグローバルオブジェクトではなく、定義されていない可能性
- Dawnの `price.liquid` には `product` オブジェクトが渡されているため、`product.tags` を使用すべき

**推奨実装：**
```
{% assign sales_tags = 'セール,早割,超早割' | split: ',' %}
{% for tag in product.tags %}
  {% if sales_tags contains tag %}
    <span>{{ tag }}</span>
  {% endif %}
{% endfor %}
```

セール関連以外のタグが表示されないよう絞り込む方法として、メタフィールドの使用も提案されました。

**結果：**
質問者は `product.tags` を使用したコードで表示に成功しました。

<div class="post-metadata">

**Author:** ![KDesign](https://avatars.discourse-cdn.com/v4/letter/k/c57346/32.png) [@KDesign](https://community.shopify.com/u/KDesign)\
**Post date:** [July 18, 2023, 4:18pm UTC](https://community.shopify.com/t/topic/233722/1 "2023-07-18T16:18:52Z")

</div>

お世話になります。

初心者レベルとなりますため、以下ご教授いただければ幸いです。

テーマはDawnを使用しています。

商品ページで金額の横にタグで登録した文言をラベルとして表示させたいと考えています。

狙いとしては、「セール」の表示ではなく、

お客様側で登録したタグの文言を表示させたい

（タイミングによって「早割」「超早割」など、割引にバリエーションを持たせたい）

ということがあります。

金額の横に表示ということで、price.liquidをさわれば良いことはわかったのですが、

タグを登録したうえで、さまざまな参考を見て

```auto
{% for tag in card_product.tags %}
  <span>{{ tag }}</span>
{% endfor %}

```

こちらのコードを入れてみたものの表示されません。

何が間違っているか、どなたかお教えいただけないでしょうか。

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

---

<div class="post-metadata">

**Author:** ![ogasawarakyohei](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/ogasawarakyohei/32/28415_2.png) [@ogasawarakyohei](https://community.shopify.com/u/ogasawarakyohei)\
**Post date:** [July 19, 2023, 12:53am UTC](https://community.shopify.com/t/topic/233722/2 "2023-07-19T00:53:27Z")

</div>

card\_product には何が入ってますか？

グローバルなオブジェクトではないと思うので、独自で定義している変数ですかね？

もしcard\_productがproductを入れたものならtagsプロパティもあると思うので動くかなと思うのですが、動かないということは、

・tagsが入っていない

・そもそもcard\_productという変数が定義されていない

あたりが怪しいと思います。

Dawnをお使いでしたら、price.liquidにはセクションからproductが渡されていますので、productを使えば商品のtagsは取得できると思います。

```auto
{% for tag in product.tags %}
  <span>{{ tag }}</span>
{% endfor %}

```

ただ、for文ですべてのタグを出力する感じでいいんですかね？

セール関連に絞りたい場合、

```auto
{% assign sale_tags = 'セール,早割,超早割' | split: ',' %}
{% for tag in product.tags %}
  {% if sale_tags contains tag %}
    <span>{{ tag }}</span>
  {% endif %}
{% endfor %}

```

のようにする必要があります。

これは蛇足ですので、聞き流していただいていいのですが、要件的にはタグを使うのではなく、メタフィールドの方が適しているかなと思いました。

上述したように、セール関連以外のタグが表示されないように絞ったりするハンドリング等で管理が煩雑になりますので。

---

<div class="post-metadata">

**Author:** ![KDesign](https://avatars.discourse-cdn.com/v4/letter/k/c57346/32.png) [@KDesign](https://community.shopify.com/u/KDesign)\
**Post date:** [July 20, 2023, 8:49am UTC](https://community.shopify.com/t/topic/233722/3 "2023-07-20T08:49:03Z")

</div>

ありがとうございます。

```auto
{% for tag in product.tags %}
  <span>{{ tag }}</span>
{% endfor %}

```

いただいた上記のコードで実装したところうまく表示されました。
