FROM CACHE - jp_header

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

解決済

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

pebble_web_team
Shopify Partner
5 0 0

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

 

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

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

 

そこで注文確認メールに

 

{% if order.tags contains "b2b" %}

タグを含む場合の文言

{% else %}

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

{% endif %}

 

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

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

 

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

1 件の受理された解決策
Qcoltd
Shopify Partner
1076 442 436

成功

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

 

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

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

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

 

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

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

 

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

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

 

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

 

{% 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タグを含む場合の文言<br>
{% else %}
  b2bタグを含まない場合の<br>
{% endif %}

 

 

 

ご参考まで。

(キュー小坂)

株式会社Q (キュー)
グラフィックデザイン、アパレル事業、Web制作など色々やっている渋谷区代々木の会社です。ShopifyでのECサイトの運営・開発も行なっています。
私たちについて: https://web.q-co.jp/ テックブログ: https://techlab.q-co.jp/

元の投稿で解決策を見る

4件の返信4

株式会社フルバランス
Shopify Partner
1586 565 726

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ボタンを押して頂ければ嬉しいです。

 

フルバランス 道家

株式会社フルバランス(Shopify Experts)
Shopify専門のEC成長支援会社です。ストアの新規構築から運用や改善のサポートなどShopifyに関する幅広いサービスを行なっております。
ECの技術・実務・成長、お悩みのことがあれば、お気軽にご相談ください。
『すべてのブランドの特大成長エンジンを搭載する』 株式会社フルバランス
pebble_web_team
Shopify Partner
5 0 0

株式会社フルバランス

道家様

 

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

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

 

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

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

 

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

Qcoltd
Shopify Partner
1076 442 436

成功

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

 

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

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

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

 

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

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

 

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

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

 

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

 

{% 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タグを含む場合の文言<br>
{% else %}
  b2bタグを含まない場合の<br>
{% endif %}

 

 

 

ご参考まで。

(キュー小坂)

株式会社Q (キュー)
グラフィックデザイン、アパレル事業、Web制作など色々やっている渋谷区代々木の会社です。ShopifyでのECサイトの運営・開発も行なっています。
私たちについて: https://web.q-co.jp/ テックブログ: https://techlab.q-co.jp/
pebble_web_team
Shopify Partner
5 0 0

株式会社Q

小坂様

 

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

 

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

 

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

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

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

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

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