# 注文確認メールにおける注文タグでの表示出し分けについて

**URL:** <https://community.shopify.com/t/topic/182679>\
**Category:** 技術的なQ＆A\
**Created:** [January 11, 2023, 10:50am UTC](https://community.shopify.com/t/topic/182679 "2023-01-11T10:50:45Z")\
**Posts on this page:** 5\
**Page:** 1

## AI-generated summary

目的は、特定顧客の購入時に自動付与される注文タグ「b2b」（将来的に「b2b-◯◯」などの派生含む）をもとに、注文確認メール内の表示を出し分けること。Liquidで「{% if order.tags contains "b2b" %}」を用いたが分岐せず困っている。

指摘1：配列（order.tags）へのcontainsは部分一致にならず、タグが「b2b-sample」の場合は「contains 'b2b'」で真にならない可能性。ただし今回はタグが「b2b」単体でも分岐せず、根本原因ではなかった。

原因と検証：Shopify Flowやアプリで注文タグを追加している場合、メール送信がタグ付与完了前に実行され、メール側のLiquidがタグを検出できない。第三者の検証でも同現象を確認。

代替案：顧客タグでの出し分けに切替。customer.tagsをループし、各タグ文字列に「b2b」を含むかで判定（「b2bdata」「b2b_sample」なども可）。提示コードは動作確認済み。

結論・対応：注文タグでの分岐はタイミング的に不適。顧客タグによる分岐をクライアントへ提案する方針で事実上解決。

<div class="post-metadata">

**Author:** ![pebble\_web\_team](https://avatars.discourse-cdn.com/v4/letter/p/8dc957/32.png) [@pebble\_web\_team](https://community.shopify.com/u/pebble_web_team)\
**Post date:** [January 11, 2023, 10:50am UTC](https://community.shopify.com/t/topic/182679/1 "2023-01-11T10:50:45Z")

</div>

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

特定の顧客タグを持つユーザーからの発注に対し、"b2b"という注文タグを自動で付与する、という設定をしています。

この"b2b"という文言を含む（今後b2bの別バリエーションタグを設定する可能性があるため「含む」となります）注文タグを持つ場合に注文確認メールで表示の出し分けを行いたいと考えています。

そこで注文確認メールに

{% if order.tags contains “b2b” %}

タグを含む場合の文言

{% else %}

タグを含まない場合の文言

{% endif %}

という形で記載しているのですが、出し分けがされません。

検索をしても原因が掴めず難儀しております。

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

---

<div class="post-metadata">

**Author:** ![Anonymous\_44fbe07fc59d9ccaacd70575fd5a5155](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/anonymous_44fbe07fc59d9ccaacd70575fd5a5155/32/194200_2.png) [@Anonymous\_44fbe07fc59d9ccaacd70575fd5a5155](https://community.shopify.com/u/Anonymous_44fbe07fc59d9ccaacd70575fd5a5155)\
**Post date:** [January 12, 2023, 9:04am UTC](https://community.shopify.com/t/topic/182679/2 "2023-01-12T09:04:38Z")

</div>

Pebble\_web\_team 様

お世話になっております。

フルバランスの道家と申します。

ご質問確認しました。

可能性の話ですが、配列内（order.tags）をcontainsで調べるとき、部分一致ができないのではないでしょうか。

例えば、

order.tags = [“b2b”]だとcontains “b2b” でtrueになるかと思いますが、

order.tags = [“b2b-sample”]だと、contains "b2b"ではなく、contains "b2b-sample"にしないとtrueにならないのかもしれません。

もし、"b2b"のみの形でタグ付けされていれば、申し訳ありません。

なにかヒントになれば幸いです。

私たちの励みにもなりますので、

お役に立てていればBest Answerボタンを押して頂ければ嬉しいです。

フルバランス 道家

---

<div class="post-metadata">

**Author:** ![pebble\_web\_team](https://avatars.discourse-cdn.com/v4/letter/p/8dc957/32.png) [@pebble\_web\_team](https://community.shopify.com/u/pebble_web_team)\
**Post date:** [January 13, 2023, 8:30am UTC](https://community.shopify.com/t/topic/182679/3 "2023-01-13T08:30:29Z")

</div>

株式会社フルバランス

道家様

ご返答ありがとうございます。

> order.tags = [“b2b”]だとcontains “b2b” でtrueになるかと思いますが、  
> もし、"b2b"のみの形でタグ付けされていれば、

ご記載いただいている通り、現在は"b2b"のみの形でタグ付けを行っております。

その上で出し分けが機能しないため、現在行き詰ってしまっております…

よろしくお願い申し上げます。

---

<div class="post-metadata">

**Author:** ![Qcoltd](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/qcoltd/32/900_2.png) [@Qcoltd](https://community.shopify.com/u/Qcoltd)\
**Post date:** [January 17, 2023, 9:18am UTC](https://community.shopify.com/t/topic/182679/4 "2023-01-17T09:18:25Z")

</div>

ご質問いただいている、注文確認メールでの振り分けの件ですが、オーダーへ[b2b]タグの追加はどのように行われていますでしょうか。

もし、Shopify Flowやタグを追加する機能を持つアプリでタグを追加されている場合、

おそらく、Shopify Flowやアプリが注文にタグを追加する処理が完了する前に、メールが送信されてしまっているのではないかと思います、

そのため、メール内のliquidで判定できない、のだと推測します。

弊社ではShopify Flowで購入時にオーダーへ[b2b]タグを追加しテストしましたが、

ご質問者様同様に注文確認メールでの分岐は出来ませんでした。

そこで別案となりますが、ご質問の中に特定のユーザーが購入した際にオーダーにタグを追加するということでしたが、

逆にオーダーをしたユーザーに特定のタグが付いていた場合に出しわけする方法でも同様の動きになるかと思われますが、いかがでしょうか。

下記コードですとユーザーに付いているタグが[b2b]の他[b2bdata][b2b\_sample]などのb2b含むタグでも「b2bタグを含む場合の文言」の方へ分岐されます。

```markup
{% assign c_b2btag = '' %}
{% for c_tag in customer.tags %}
  {% if c_tag contains 'b2b' %}
    {% assign c_b2btag = 'Y' %}
    {% break %}
  {% endif %}
{% endfor %}
{% if c_b2btag == 'Y' %}
  b2bタグを含む場合の文言

{% else %}
  b2bタグを含まない場合の

{% endif %}

```

ご参考まで。

(キュー小坂)

---

<div class="post-metadata">

**Author:** ![pebble\_web\_team](https://avatars.discourse-cdn.com/v4/letter/p/8dc957/32.png) [@pebble\_web\_team](https://community.shopify.com/u/pebble_web_team)\
**Post date:** [January 18, 2023, 10:10am UTC](https://community.shopify.com/t/topic/182679/5 "2023-01-18T10:10:02Z")

</div>

株式会社Q

小坂様

ご返答ありがとうございます。

> もし、Shopify Flowやタグを追加する機能を持つアプリでタグを追加されている場合、おそらく、Shopify Flowやアプリが注文にタグを追加する処理が完了する前に、メールが送信されてしまっているのではないかと思います

現在確認しておりますが、恐らくこの状況が該当するものと思われます。

そして顧客タグでの出し分けについてもありがとうございます。

こちらは機能すること、確認しております。

よって、クライアントには顧客タグによる出し分けを提案してみようと思います。

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