新規会員登録時の誕生日登録方法は以下の記事で紹介しましたが、
今回は、すでに会員のお客様や新規登録時に誕生日を登録し忘れた方が、後から追加登録できる仕組みを作る方法を紹介します。
Shopifyコミュニティなどでも調べましたが、単純な方法は見つからず、当初は以下のような構成を想定していました。
マイページ → App Proxy → サーバー → HMAC検証 → Admin API → メタフィールド更新
ただ、この方法は初心者にはかなり複雑で、実装・運用ともにハードルが高い構成です。
そこで今回あれこれ試した結果、外部サーバーやAPIを使わずに、Shopify Formsとテーマファイルの修正だけで実装できることがわかりました。
本日のゴール
誕生日未登録の方がマイページから誕生日を登録できるようにする
登録済みの場合のマイページでの見え方

未登録の場合のマイページでの見え方

設定の流れ
以下の4ステップです。
触るのは「Shopify Forms」「main-account.liquid」「テーマのカスタマイズ」の3か所。
すでにShopify Formsをインストールして有効化している場合にはたった2ステップですね。
- Shopify Formsアプリをインストール
- テーマでShopify Formsを有効化
- Inline formタイプのフォーム作成
- タイトルや文言は適宜変更
- フィールドにお客様メタフィールドで予め設定した誕生日情報を入れたい項目を選択
※お客様メタフィールドの設定方法はこちらの記事をご確認ください。
- 作成したフォームの情報をmain-account.liquidに追記
{% if customer.metafields.custom.birthday == blank %} の条件でフォームを出し分け
以下のように条件分岐させるようにしています。- 既に誕生日を登録済みの場合は誕生日を表示
- 未登録の場合は該当のIDのフォームを表示
※popup形式はマイページ内埋め込み表示に対応しないため、今回はinline形式を使用
色味やフォント、配置などはアプリ上でもliquid上でも自由にいじれますよ。
実にシンプル👏

Shopify Formsの便利機能
Shopify Formsではマイページなどで表示だけではなく、ランディングページ作成もできます。
メニューやフッターなどに設置しておけばログインしなくても登録できるようになります。

さらに、誕生日登録のメリットを出すためにディスカウントの提供もできます!

「送信」するとクーポンコードが表示されます。

3の具体的な設定方法はnoteに書いておきましたので、よろしければご参照くださいませ。
まとめ
本記事では、会員登録時以外でも誕生日を登録できる方法と、マイページでの表示例、さらにShopify Formsを活用した実装方法について紹介しました。
これにより、会員登録時に誕生日を入力し忘れたユーザーでも、後からスムーズに情報を追加できるようになります。
顧客データをより正確に取得できることで、セグメント配信やCRM施策に活用しやすくなり、結果としてLTV向上にもつながります。
外部サーバーや複雑なAPI連携を使わず、Shopify Formsとテーマファイルの追記だけで実装できるため、比較的手軽に導入できる方法です。


