Liquid、JavaScriptなどに関する質問
アカウントの有効化画面で誕生日の入力項目とメルマガ登録のチェックボックスを入れたいと思っています。
activate_account.liquidを編集して
<input type="date" name="customer[note][Birthday]" id="RegisterForm-Birthday" class="input-full" value="" autocomplete="bday" placeholder="{{ 'customer.register.birthday' | t }}">
と入れてみましたが、アカウント有効化画面で誕生日を入力しても顧客情報には反映されませんでした。
アカウント有効化の画面に他の要素を加えることはできないのでしょうか?
質問者様のコードをアカウント有効化フォームに追加してみましたが、
質問者様と同様に、Customer Noteは、顧客情報に反映されませんでした。
会員登録フォームのactionと
有効化フォームのactionを
比較しますと、
会員登録フォームのaction (/account)
<form method="post" action="/account" id="create_customer" accept-charset="UTF-8" novalidate="novalidate" onsubmit="window.Shopify.recaptchaV3.addToken(this, "create_customer"); return false;">
有効化フォームのaction (/account/activate)
<form method="post" action="/account/activate" accept-charset="UTF-8">
となっており、actionの設定が異なることで、
Customer Noteを受け付けないのかもしれません。
> アカウント有効化の画面に他の要素を加えることはできないのでしょうか?
できない、と言い切れるほど調べられてはいないのですが、
少なくとも、質問者様の調査通り、
通常のやり方では、Customer Noteを有効化フォームから更新できないことは間違いなさそうです。
以降は、
手間がかかりすぎるため、現実的ではないアイデアになるため、スルーいただいても大丈夫です。
例えば、下記のコミュニティへの投稿を見ますと、
Admin APIでCustomer Noteの更新ができるようです。
APIサーバを別途準備し、
そのサーバからAdmin APIでCustomer Noteを更新するようにし、
有効化フォームには、フォーム送信時にJavaScriptでAPIコールし、
Customer Noteを更新する、
という方法もあるかもしれません。
(誰でもCustomer Noteを更新できるようになってしまわないような仕組みも必要になってきますが。)
大した情報がなく恐縮です。
(キュー田辺)
オンラインストアを運営する中で、商品の返品や交換は重要なプロセスとなります。Shopify管理画面を通して簡単に返品や交換が行えることをご存知でしょうか?希望する場合は、お客...
By Mirai Sep 15, 2024Shopifyの請求書の支払いが失敗したという通知を受け取って驚いたことはありますか。初めての支払いでエラーが発生したり、これまで何の問題もなく支払いできていたのに突然失敗し...
By Minami_ Sep 8, 20242023年2月、Shopifyはcheckout.liquidを廃止し、Checkout Extensibilityに移行することを発表いたしました。この新しいチェックアウト...
By JasonH Aug 15, 2024