reCAPTCHA利用でのテンプレートの注意点は?
reCAPTCHAを利用する場合にフォームを送信する各テンプレートに注意点がありますので下記の表をご確認ください。
対象フォーム
① ログインフォーム
・(ブロック)【ヘッダー】ログイン
・(ブロック)ログイン※
・商品購入/ログイン
・MYページ/ログイン
② クレジットカード入力
・商品購入(会員)/お支払方法の指定
③ 問い合わせ
・お問い合わせ(入力ページ)
※サイドバーのログインブロックはPCのみ
各テンプレートの注意点
PC版テンプレートのみ利用 (デフォルト/レスポンシブ) | 詳細設定>デザイン スマホサイトを利用 が有効の場合 | |
・現行タイプのテンプレートを利用 | ①そのまま利用可 | ②reCAPTCHA v3を 利用する場合は要修正 |
・送信ボタンをカスタマイズしている場合 ・2016年以前のご契約(※) ※旧スマホテンプレート | ③フォームやボタンを 要確認 | ③フォームやボタンを 要確認 |
【①そのまま利用可】とは
自動的に利用可能になります。
※参考:標準テンプレートの仕様
・通常フォームでは送信ボタンで「type=”submit”」が指定されている。
・支払方法選択画面の送信ボタンで「oneclick=”pageSubmit()”」がa要素で指定されている。
【②reCAPTCHA v3を利用する場合は要修正】とは
ログインフォームでreCAPTCHAを有効にする場合は「デザイン>スマートフォン>ページ設定>MYページ/ログイン>テンプレート」にて下記の修正を行う必要があります。
<script>
function ajaxLogin() {
var postData = $('form#login_mypage').serialize();
$.ajax({
type: "POST",
url: "<!--{https}-->mypage/login.php",
data: postData,
cache: false,
dataType: "json",
error: function(XMLHttpRequest, textStatus, errorThrown){
alert(textStatus);
},
success: function(result){
if (result.success) {
location.href = result.success;
} else {
alert(result.login_error);
}
}
});
}
</script>
↓↓↓下記に変更
<script>
function ajaxLogin() {
var postData = $('form#login_mypage').serialize();
}
</script>
※reCAPTCHA v2を利用の場合は変更の必要はありません。
【③フォームやボタンを要確認】とは
下記の「標準テンプレートの仕様」を各対象フォーム送信画面でご確認ください。
reCAPTCHA v3を利用する場合は「②reCAPTCHA v3を利用する場合は要修正」を参考に修正を行ってください。
■標準テンプレートの仕様
・通常フォームでは送信ボタンで「type=”submit”」が指定されている。
・支払方法選択画面の送信ボタンで「oneclick=”pageSubmit()”」がa要素で指定されている。
■その他の注意点
フォーム内容をカスタマイズしている場合はformのidがnameと異なる値に変更されてる場合、recaptchaを有効化するとidがnameと同じになり、ショップ独自のスクリプトが動かなくなります。
reCAPTCHAを動作確認したい場合は?
reCAPTCHAが有効になっている時は、画面右下に「reCAPTCHAバッジ」が表示されます。
実際に動作自体を確認したい場合は、reCAPTCHAの設定を一時的に厳しく設定し、各フォームで送信ボタンを何度も押す事で確認が可能です。
■参考
・reCAPTCHA v2の場合はGoogle reCAPTCHA設定でセキュリティ設定を「セキュリティ重視」
・reCAPTCHA v3の場合は閾値(しきいち)の設定を「0.5以上」
※v3でbot判定されエラーになった場合は設定などで戻す手段がありませんので、エラーになる動作テストはオススメしません。
・その他のFAQはGoogle reCAPTCHA よくある質問をご確認ください。
・reCAPTCHAの設定方法はこちらをご確認ください。