ShopifyやEコマースに関連することを話してみよう
商品のタグを用いて、イベント商品を購入いただいた方には注文完了メールの文章がイベント商品用の文章に変わるようコードを設定しました。
これで大丈夫かと思っていたのですが、イベント商品を複数購入していただいた場合、その数の分だけ文章が表示されてしまうことに気づきました。
色々調べてみました(forloopオブジェクトなど試してみましたがダメでした)が、文章を1回表示させたら2回目以降は表示させないといったような設定をどのように指定すればいいのかわかりませんでした。
どなたかご教示いただけますと幸いです。
よろしくお願いいたします。
{% for line in line_items %} {% for tag in line.product.tags %} {% if tag contains 'クリスマス' %} <h3>Happy Merry Christmas!</h3> クリスマスケーキをご注文いただき誠にありがとうございます。 <br>テストテスト {% elsif tag contains 'ひな祭り' %} <h3>3月3日はひな祭り</h3> ひな祭りケーキをご注文いただき誠にありがとうございます。 {% endif %} {% endfor %} {% endfor %}
解決済! ベストソリューションを見る。
成功
Ponucoさま
ご質問を確認いたしました。
ループの処理って少し複雑なところがありますよね。。
いただいているコードですが、以下のように変更されてみてはいかがでしょうか?
{% assign viewText = false %} <!-- テキストが表示されたかどうか判断する変数を定義、初期値はfalse -->
{% for line in line_items %}
{% for tag in line.product.tags %}
{% if tag contains 'クリスマス' %}
<h3>Happy Merry Christmas!</h3>
クリスマスケーキをご注文いただき誠にありがとうございます。
<br>テストテスト
{% assign viewText = true %} <!-- テキストが表示されたため、値にtrueを入れる -->
{% elsif tag contains 'ひな祭り' %}
<h3>3月3日はひな祭り</h3>
ひな祭りケーキをご注文いただき誠にありがとうございます。
{% assign viewText = true %} <!-- テキストが表示されたため、値にtrueを入れる -->
{% endif %}
{% endfor %}
{% if viewText == true %} <!-- 上の処理でテキストが表示された(true)とき -->
{% break %} <!-- 「for line・・・」の処理を終了する -->
{% endif %}
{% endfor %}
上記を参考に一度検証いただけますと幸いです。
ご参考になりましたでしょうか。
私たちの励みにもなりますので、
お役に立てていればBest Answerボタンを押して頂ければ嬉しいです。
分からない点があれば、またいつでもご連絡ください。
フルバランス 園畑
成功
Ponucoさま
ご質問を確認いたしました。
ループの処理って少し複雑なところがありますよね。。
いただいているコードですが、以下のように変更されてみてはいかがでしょうか?
{% assign viewText = false %} <!-- テキストが表示されたかどうか判断する変数を定義、初期値はfalse -->
{% for line in line_items %}
{% for tag in line.product.tags %}
{% if tag contains 'クリスマス' %}
<h3>Happy Merry Christmas!</h3>
クリスマスケーキをご注文いただき誠にありがとうございます。
<br>テストテスト
{% assign viewText = true %} <!-- テキストが表示されたため、値にtrueを入れる -->
{% elsif tag contains 'ひな祭り' %}
<h3>3月3日はひな祭り</h3>
ひな祭りケーキをご注文いただき誠にありがとうございます。
{% assign viewText = true %} <!-- テキストが表示されたため、値にtrueを入れる -->
{% endif %}
{% endfor %}
{% if viewText == true %} <!-- 上の処理でテキストが表示された(true)とき -->
{% break %} <!-- 「for line・・・」の処理を終了する -->
{% endif %}
{% endfor %}
上記を参考に一度検証いただけますと幸いです。
ご参考になりましたでしょうか。
私たちの励みにもなりますので、
お役に立てていればBest Answerボタンを押して頂ければ嬉しいです。
分からない点があれば、またいつでもご連絡ください。
フルバランス 園畑
株式会社フルバランス 園畑様
ご確認いただきありがとうございます!
変数の定義が苦手なので、コメントにご説明を入れてくださりとても勉強になります。
検証いたしましたところ、下記のようにコードを分けたら反映できました!
ご教授いただき誠にありがとうございました。
{% assign viewText = false %} <!-- テキストが表示されたかどうか判断する変数を定義、初期値はfalse -->
{% for line in line_items %}
{% for tag in line.product.tags %}
{% if tag contains 'クリスマス' %}
<h3 style="margin-bottom: 8px;">Happy Merry Christmas!</h3>
クリスマスケーキをご注文いただき誠にありがとうございます。<br><br>
{% assign viewText = true %} <!-- テキストが表示されたため、値にtrueを入れる -->
{% endif %}
{% endfor %}
{% if viewText == true %} <!-- 上の処理でテキストが表示された(true)とき -->
{% break %} <!-- 「for line・・・」の処理を終了する -->
{% endif %}
{% endfor %}
{% assign viewText = false %} <!-- テキストが表示されたかどうか判断する変数を定義、初期値はfalse -->
{% for line in line_items %}
{% for tag in line.product.tags %}
{% if tag contains 'ひな祭り' %}
<h3 style="margin-bottom: 8px;">3月3日はひな祭り</h3>
ひな祭りケーキをご注文いただき誠にありがとうございます。<br><br>
{% assign viewText = true %} <!-- テキストが表示されたため、値にtrueを入れる -->
{% endif %}
{% endfor %}
{% if viewText == true %} <!-- 上の処理でテキストが表示された(true)とき -->
{% break %} <!-- 「for line・・・」の処理を終了する -->
{% endif %}
{% endfor %}
サポートの選択肢が増えていく中、最適となる選択の判断が難しくなっているかと存じます。今回は問題の解決に最適となるサポートの選択方法を、紹介させて頂きます。 選択肢のご紹介...
By Mirai Oct 6, 20242023年初頭、Shopifyペイメントアカウント、及びShopifyアカウント全体のセキュリティを強化する為の変更が適用されました。ユーザーのアカウントセキュリティを強化す...
By Mirai Sep 29, 2024概要: 年末/年明けは、消費者が最もショッピングを行う時期の一つです。特に、ブラックフライデー・サイバーマンデー(BFCM)は、世界中で注目される大規模なセールイベントであ...
By JapanGuru Sep 25, 2024