Liquid、JavaScriptなどに関する質問
現在、注文完了メールをデフォルトの機能を利用して送信しています。
これを、商品によって送る内容を変えたいです。
商品は2パターンあり、それぞれのコレクションに追加しています。
商品A コレクション1
商品B コレクション2
というように、コレクションと商品は1:1の関係です。
顧客は、商品AとBを購入する可能性もありますが、その場合は、
商品A用のメールとB用のメールの2通が送信される仕様を想定しています。
liquidは初心者ですが、頑張って実装したいと思っています。
ご教示いただけましたら幸いです....!
@track さま、以前は大変わかりやすくご教示いただきましてありがとうございました。
よろしければまたお力添えいただけますと幸いです。
解決済! ベストソリューションを見る。
成功
Yuka_mさま
はじめまして、フルバランスの渡邉です。
ご質問を確認いたしました。
通知メールのカスタマイズって、コードとか少しややこしい部分がありますよね。
一例ですが、以下のように分岐させるのはいかがでしょうか?
{% assign has_item_a = false %}
{% assign has_item_b = false %}
{% for line in subtotal_line_items %}
{% if line.title contains '商品Aのタイトル' %}
{% assign has_item_a = true %}
{% endif %}
{% if line.title contains '商品Bのタイトル' %}
{% assign has_item_b = true %}
{% endif %}
{% endfor %}
{% if has_item_a and has_item_b %}
<p>商品Aと商品Bの両方が含まれている場合に表示するテキスト</p>
{% elsif has_item_a %}
<p>商品Aが含まれている場合に表示するテキスト</p>
{% elsif has_item_b %}
<p>商品Bが含まれている場合に表示するテキスト</p>
{% else %}
<p>{{ email_body }}</p>
{% endif %}
仕組みとしては、for line in subtotal_line_itemsで注文に含まれる全商品を取得し、
商品Aが入ってたらhas_item_aという変数をtrueに、商品Bが入ってたらhas_item_bをtrueにします。
そのあとはhas_item_aとhas_item_b両方がtrueだったらこのテキスト、どちらかがtrueだったら別のテキスト、AもBも含まれない場合はデフォルトの{{ email_body }}で指定したテキストを表示します。
参考:
通知メールで使用可能なliquid変数
https://help.shopify.com/ja/manual/orders/notifications/email-variables#part-037871c9c4b5cc05
ご参考になりましたら幸いです。
私たちの励みにもなりますので、
お役に立てていればBest Answerボタンを押して頂ければ嬉しいです。
分からない点があれば、またいつでもご連絡ください。
フルバランス 渡邉
成功
Yuka_mさま
はじめまして、フルバランスの渡邉です。
ご質問を確認いたしました。
通知メールのカスタマイズって、コードとか少しややこしい部分がありますよね。
一例ですが、以下のように分岐させるのはいかがでしょうか?
{% assign has_item_a = false %}
{% assign has_item_b = false %}
{% for line in subtotal_line_items %}
{% if line.title contains '商品Aのタイトル' %}
{% assign has_item_a = true %}
{% endif %}
{% if line.title contains '商品Bのタイトル' %}
{% assign has_item_b = true %}
{% endif %}
{% endfor %}
{% if has_item_a and has_item_b %}
<p>商品Aと商品Bの両方が含まれている場合に表示するテキスト</p>
{% elsif has_item_a %}
<p>商品Aが含まれている場合に表示するテキスト</p>
{% elsif has_item_b %}
<p>商品Bが含まれている場合に表示するテキスト</p>
{% else %}
<p>{{ email_body }}</p>
{% endif %}
仕組みとしては、for line in subtotal_line_itemsで注文に含まれる全商品を取得し、
商品Aが入ってたらhas_item_aという変数をtrueに、商品Bが入ってたらhas_item_bをtrueにします。
そのあとはhas_item_aとhas_item_b両方がtrueだったらこのテキスト、どちらかがtrueだったら別のテキスト、AもBも含まれない場合はデフォルトの{{ email_body }}で指定したテキストを表示します。
参考:
通知メールで使用可能なliquid変数
https://help.shopify.com/ja/manual/orders/notifications/email-variables#part-037871c9c4b5cc05
ご参考になりましたら幸いです。
私たちの励みにもなりますので、
お役に立てていればBest Answerボタンを押して頂ければ嬉しいです。
分からない点があれば、またいつでもご連絡ください。
フルバランス 渡邉
Shopifyの請求書の支払いが失敗したという通知を受け取って驚いたことはありますか。初めての支払いでエラーが発生したり、これまで何の問題もなく支払いできていたのに突然失敗し...
By Minami_ Sep 8, 20242023年2月、Shopifyはcheckout.liquidを廃止し、Checkout Extensibilityに移行することを発表いたしました。この新しいチェックアウト...
By JasonH Aug 15, 2024「味噌の可能性を、とき放つ」をコンセプトに、豊かな自然に恵まれた信州で味噌の製造販売を行う新田醸造。江戸末期に創業した老舗のみそ屋さんですが、2024年春、顧客層や販売範囲の...
By Minami_ Jul 30, 2024