Liquid、JavaScriptなどに関する質問
カート画面において配送日時指定のフォームがあるのですが、これを日本以外からのアクセス時には非表示としたいです。
Liquidで使える国の判別方法はありますか?
言語セレクターの情報を使うと、日本にいて言語を変えている人にも表示されなくなってしまうため、アクセス元の国を検知したいです。
JSなどつかってしま
ログイン中のカスタマーしか出来ないですが、登録住所から割り出す方法が取れそうです。
あとは電話番号でしょうか。日本なら+81のように、固有の識別子が存在します。
{% if customer.phone contains '+81' %}
<!-- 日本ユーザーの時のみ表示 -->
{% endif %}
フォーラム内から確認した限り、国籍を識別する方法はこれくらいでしょう。
https://shopify.dev/docs/api/liquid/objects/customer#customer-addresses
難点は、ログイン中のみ使える点です。
非ログインで購入する場合は使えないです。
ーー
jsならIPジオロケーションサービスを用いれば、ログイン状況無関係な識別が可能です。
ユーザーのIPアドレスから国籍を絞り込む方法です。
例えば以下リンクを踏むと、大体の地域が表示されます。
https://www.geolocation.com/ja
こちらも難点があります。
liquidと違って、要素の出し分けは出来ません。
フォームのパーツは全て表示してから、jsで動的に隠したり削除することになります。
あとは、精度がどこまで信頼できるのか不明です。
サポートの選択肢が増えていく中、最適となる選択の判断が難しくなっているかと存じます。今回は問題の解決に最適となるサポートの選択方法を、紹介させて頂きます。 選択肢のご紹介...
By Mirai Oct 6, 20242023年初頭、Shopifyペイメントアカウント、及びShopifyアカウント全体のセキュリティを強化する為の変更が適用されました。ユーザーのアカウントセキュリティを強化す...
By Mirai Sep 29, 2024概要: 年末/年明けは、消費者が最もショッピングを行う時期の一つです。特に、ブラックフライデー・サイバーマンデー(BFCM)は、世界中で注目される大規模なセールイベントであ...
By JapanGuru Sep 25, 2024