お世話になります。
注文状況ページに代引きの時だけメッセージを表示するために、
こちらのヘルプを参考にしてコードを書いてみたのですが、表示されませんでした。
(参考)https://help.shopify.com/ja/manual/orders/status-tracking/customize-order-status/order-status-javascript-asset
チェックアウトの追加スクリプトに書いたコードがこちらです。
どなたかご教授ください!宜しくお願い致します。
注文状況ページで、代引き時のみ注意メッセージを表示したいという相談。最初に試した transaction.gateway == "Cash on Delivery (COD)" の条件分岐では表示されず、else 側だけ出ることから、判定対象の指定が誤っていると判明しました。
主な修正点:
・<script></script> は不要。
・transaction は単一オブジェクトではなく配列として扱う必要があり、checkout.transactions[0].gateway または transactions[0].gateway を参照する。
・必要に応じて for 文で checkout.transactions / transactions をループして判定する。
その後、コードを修正して Shopify.Checkout.OrderStatus.addContentBox(...) 内にメッセージを表示できることを確認。添付画像は、編集画面と実際の表示結果の確認に使われていました。
途中で endfor に赤い点線が出る懸念もありましたが、最終的にこれはブラウザの英文スペルチェックであり、コードエラーではないと判明。問題は実質解決済みです。
お世話になります。
注文状況ページに代引きの時だけメッセージを表示するために、
こちらのヘルプを参考にしてコードを書いてみたのですが、表示されませんでした。
(参考)https://help.shopify.com/ja/manual/orders/status-tracking/customize-order-status/order-status-javascript-asset
チェックアウトの追加スクリプトに書いたコードがこちらです。
どなたかご教授ください!宜しくお願い致します。
返信ありがとうございます。
お返事が遅くなりまして、申し訳ございません。
代引きの時のみメッセージを表示させる方法が分かる方がいらっしゃいましたら、教えていただけますと幸いです。
追加スクリプトに追加したコード
{% if transaction.gateway == “Cash on Delivery (COD)” %}
Shopify.Checkout.OrderStatus.addContentBox(
代金引換料金が別途発生いたします
) {% else %}追加スクリプトテスト
{% endif %}transactionオブジェクトが配列になっていたため、0番目指定で単独で出すか、
{{ checkout.transactions[0].gateway }}
{{ transactions[0].gateway }}
もしくはfor文で抜き出すと出てきました。
{% for transaction in checkout.transactions %}
{{ transaction.gateway }}
{% endfor %}
{% for transaction in transactions %}
{{ transaction.gateway }}
{% endfor %}
再度返信をいただきまして、ありがとうございます。
教えていただいたコードを元に書いてみました。
endforのところに赤い点線が出ているのが気になりましたが、注文状況ページに文章を表示させることができました!
ありがとうございます!
表示させることができたのですが、コード編集初心者のため、これで正しいのか不安なのですが大丈夫でしょうか?
「赤い点線」これ今まで気づいてませんでしたが、「通知メール」のカスタマイズでも出てますね。
これが何を指し示してるのか分かりませんが、機能してるので無視していいとは思います。
返信ありがとうございます!
赤い点線はコードエラーで出ているものではなかったのですね。
安心致しました。
この度は丁寧に対応していただきまして、ありがとうございました。
本当に助かりました!