Liquid、JavaScriptなどに関する質問
shopifyテーマのDebutをベースにしておりますが、
カートメモ(備考欄)にデフォルトで文言を入れ、注文管理画面のメモ欄にも表示される様にしております。
ここでは例として「★お届け希望日を入力してください」ということにします。
(placeholderでは文言が消えるので、下記の方法で直接記入)
cart-template.liquid
<textarea name="note" rows="4" id="CartSpecialInstructions" class="cart-note__input" data-cart-notes>お届け希望日を入力してください{{ cart.note }}</textarea>
この状態で問題なくカート画面、注文管理のメモ欄に表示される場合と、
カート画面にも注文管理のメモ欄にも
「★お届け希望日を入力してください★お届け希望日を入力してください」
と2回繰り返し表示されるケースがあります。(店舗側、ユーザー側ともに)
同一のパソコンで、アカウントを変えてクロームブラウザを2つ開いた際に、
片方だけ2回繰り返し表示されているケースもありました。
また、liquid上で「★お届け希望日を入力せよ!!」と変更したとした場合、
変更直後には実際のカートメモに
「★お届け希望日を入力せよ!!★お届け希望日を入力してください」となり、
後半部分の表示が後追いで更新されて
「★お届け希望日を入力せよ!!★お届け希望日を入力せよ!!」となります。
キャッシュの問題かと思って悩んでるうちに自分のPC/スマホでは同事象が発生しなくなりましたが、
未だにユーザーからの実際の注文でダブり表示されるケースがあります。
改善出来る方法が分かる方おられましたら教えて頂きたいです。
恐らく手法とコードの理解に原因があると思います。
前提として記載されているコードの基本的な動作は以下になります。
上記を踏まえ、カートページからチェックアウトページへ進んでから戻るなどの操作を行った場合は以下のようになります。
上記の結果、入力欄には「お届け希望日を入力してくださいお届け希望日を入力してください」と出力されます。
これはエラーではなく書かれたコードに従った正常な動作です。
■対応策の検討
前述の仮説が正しい場合、以下などの方法が考えられると思います。
cart.attributesに関しては以下の他にも検索で色々見つかりますので調査ください。
以上ですが、liquidがよくわからない場合はエキスパートやパートナーなどの業者に依頼することをお勧めします。
いつもShopifyをご利用いただき、ありがとうございます。 Shopifyは、皆様の日本語での利用体験の向上に努めております。さらなる改善のために皆様のご意見をお寄せい...
By JasonH May 9, 2025Shopify アカデミーの学習パスと認定スキルバッジExpanding Your Shopify Business Internationallyを活用して、国際的にビジネ...
By Shopify Feb 7, 2025Shopify アカデミーの学習パスB2B on Shopify:立ち上げとカスタマイズで卸売販売に進出しましょう。これら3つの無料コースは、ShopifyストアでB2B機能...
By Shopify Jan 31, 2025