インストールをお任せしますか?
お客様のサーバーに導入・設定します。簡単な見積もりの後、固定価格でお受けします。
🌐 言語: 🇻🇳 Tiếng Việt · 🇬🇧 English · 🇯🇵 日本語(現在)
GP247 用 Google reCAPTCHA プラグイン
はじめに
このプラグインは、Google reCAPTCHA v2 —「私はロボットではありません」(おなじみのチェックボックス)を使って、GP247 サイトをスパム(偽の会員登録、フォームの自動送信)から守ります。本書は技術に詳しくないショップオーナー・管理者向けです。読み終えれば、業者に頼まなくてもご自身で Google のキーを登録し、プラグインをインストールして、会員登録・パスワード再設定・決済などのページで CAPTCHA を有効にできます。最後に、自作フォームに CAPTCHA を組み込みたい開発者向けの章があります。
⚠️ 重要: バージョン 2.0 以降、このプラグインは reCAPTCHA v2(「私はロボットではありません」チェックボックス) を使用しており、reCAPTCHA v3 ではありません。Google でキーを登録する際は必ず v2 を選んでください(ステップ 1 参照)。誤って v3 を選ぶと、チェックボックスが表示されず、フォームは常に CAPTCHA エラーになります。
動作条件(インストール前によくお読みください)
CAPTCHA の欄は、以下の条件をすべて満たした場合にのみ表示されます。どれか 1 つでも欠けていると CAPTCHA は表示されません。
グループ A — 管理画面でご自身が有効にする項目(必須):
- GoogleCaptcha プラグインが Install(インストール)され、Enable(有効化)されている。
- Site Key と Secret Key の両方が入力されていて、どちらも reCAPTCHA v2 チェックボックス型のキーである。
- Shop Config → Captcha タブで、ステータスが ON、方式として Google reCaptcha が選択され、適用したいページにチェックが入っている。
グループ B — そのページに CAPTCHA の「設置場所」があること: 4. CAPTCHA を表示できるのは、GP247 が標準でサポートしているページだけです。現在は 会員登録、パスワード再設定、お問い合わせ、決済 の 4 ページです。この一覧にないページ(またはステップ 3 でチェックしていないページ)には CAPTCHA は表示されません。 5. **自分で編集したテーマ(テンプレート)**を使っている場合は、そのページのフォームに GP247 が用意した CAPTCHA 表示用の行が残っている必要があります。GP247 の標準テーマには最初から含まれているので、テンプレートを自分で編集する場合にだけ注意してください(「開発者向け」の章を参照)。
💡 簡単に言うと、グループ A は「正しく有効にしたか」、グループ B は「そのページが CAPTCHA に対応しているか」です。両方を満たして初めてチェックボックスが表示されます。
システム要件
- GP247 バージョン 2.0 以上。
- reCAPTCHA のキーを登録するための Google アカウント(Gmail)1 つ(無料)。
ステップ 1 — Google reCAPTCHA v2 を登録する(Site Key と Secret Key の取得)
-
ブラウザを開き、キー作成ページにアクセスします:https://www.google.com/recaptcha/admin/create
-
Google アカウントでログインします(まだログインしていない場合)。
-
Label(ラベル)欄に、覚えやすい名前を入力します。例:サイト名
my-shop。 -
reCAPTCHA type(reCAPTCHA の種類)で Challenge (reCAPTCHA v2) を選び、続けて "I'm not a robot" Checkbox(日本語表示:「私はロボットではありません」チェックボックス)を選びます。
⚠️ ここが最も間違えやすいステップです。必ず v2 → チェックボックスを選び、v3 は選ばないでください。
-
Domains(ドメイン)欄に、サイトのドメインを 1 行に 1 つずつ、
https://を付けずに追加します。例:my-shop.com www.my-shop.comご自身のパソコンで試験運用している場合は、
localhostも追加してください。 -
利用規約への同意欄(Accept the reCAPTCHA Terms of Service)にチェックを入れ、Submit(送信)をクリックします。
-
成功すると、Google が 2 つのキーを表示します:
- Site Key(サイトキー/公開キー)—
6L...で始まる文字列 - Secret Key(シークレットキー)— こちらも
6L...で始まります
後でコピーできるようにこのページを開いたままにするか、2 つのキーを一時的な場所(メモ帳など)にコピーしておいてください。
- Site Key(サイトキー/公開キー)—
ステップ 2 — GP247 でプラグインをインストールして有効にする
- GP247 の Admin Panel(管理画面)にログインします。
- Extension → Plugins メニューを開きます。
- GoogleCaptcha の枠を探し、Install(インストール)ボタンをクリックします。
- インストールが終わったら、同じ枠で Enable(有効化)をクリックします。成功すると、プラグインは有効な状態に切り替わります。
コマンドラインでインストール(CLI、gp247 3.x)
上記の管理画面での 4 つの操作の代わりになる方法です。gp247 3.x 以降では、管理画面を開かずに、GoogleCaptcha を GP247 ライブラリからダウンロードしてコマンドラインでそのままインストールできます。このプラグインは、サイトに gp247/front パッケージがインストールされている必要があります。サイトのルートフォルダーでターミナルを開き、次を実行します:
# 1) ウェブサイトごとに 1 回だけ:GP247 ライブラリに接続するための API License(無料)を登録
php artisan gp247:ext-register-license
# 2) ライブラリからプラグインをダウンロードしてインストール
php artisan gp247:ext-install --type=plugin --key=GoogleCaptcha
- ステップ 1 の前に、
.envのAPP_URLがサイトの実際のドメインになっていること(http://localhostのままでないこと)を確認してください。ライセンスはこのドメインに紐付けられます。 - インストールが終わると、プラグインは有効化済みになり、キャッシュも自動で更新されるため、管理画面で Install/Enable をクリックする必要はありません。
- コマンドは
gp247.jsonに宣言された条件(core のバージョン、composer パッケージ、依存プラグイン)を自動で確認します。不足があればコマンドは停止し、何が足りないかを明確に表示します(例:サイトにgp247/frontがない)。 app/GP247/Plugins/GoogleCaptchaフォルダーがすでにサーバー上にある場合(手動でコピーした、またはインストーラーに同梱されていた場合)、コマンドは再ダウンロードせずにその場でインストールします。- プラグインがすでにインストールされている場合、コマンドは実行を拒否します。新しいバージョンに上げるには
php artisan gp247:ext-update --type=plugin --key=GoogleCaptchaを実行してください。 - コマンドの末尾に
--jsonを付けると、機械で読み取れる形式で結果を受け取れます(スクリプト/CI 用)。 - インストール後の以下の設定手順はそのまま必要です。CAPTCHA 欄を表示するには、引き続きステップ 3(Site Key と Secret Key の入力)とステップ 4(CAPTCHA の有効化、ページの選択)を行ってください。
- 詳細:プラグイン・テンプレートのインストールガイド · コマンドリファレンス。
ステップ 3 — Site Key と Secret Key を入力する
- 引き続き Extension → Plugins で、GoogleCaptcha をクリックして設定画面を開きます。
- ステップ 1 で取得した 2 つのキーを正しい欄に貼り付けます:
- Site key ← Google の Site Key を貼り付け。
- Secret key ← Google の Secret Key を貼り付け。
- Save(保存)をクリックします。成功すると保存完了のメッセージが表示されます。
ステップ 4 — CAPTCHA を有効にして適用ページを選ぶ
- Shop Setting → Shop Config を開きます。
- Captcha タブを選びます。
- CAPTCHA のステータスを ON に切り替えます。
- 方式の欄で Google reCaptcha を選びます。
- CAPTCHA を表示したいページにチェックを入れます:会員登録、パスワード再設定、お問い合わせ、決済(いくつ選んでも構いません)。
- Save(保存)をクリックします。
動作確認
- ゲストとして(またはシークレットウィンドウで)サイトを開き、会員登録ページに移動します。
- 設定が正しければ、フォーム内に 「私はロボットではありません」 の欄が表示されます。
- その欄にチェックを入れ、情報を入力して登録ボタンをクリックします。チェックせずに送信すると、フォームは CAPTCHA エラーを表示し、先に進めません。
開発者向け — 自作フォームに CAPTCHA を組み込む
バージョン 2.0 以降、idForm / idButtonForm を使う旧方式は廃止されました(新しいテーマには存在しない固定 ID に依存していたためです)。新しい方式では ID は不要です。ウィジェットを <form> タグの内側に置くだけで、Google がそのフォームに認証データを自動で挿入します。
標準の方法(GP247 の標準フォームと同じ):ページのコントローラーで CAPTCHA 部分を用意し、ビューに渡します:
// コントローラー内:'register' はページ名で、手順 4 でチェックしたページと一致させる必要があります
$viewCaptcha = gp247_captcha_processview('register', '会員登録');
// ... $viewCaptcha をビューに渡す
ビューファイルでは、<form> タグの内側、送信ボタンの上に出力します:
<form method="POST" action="...">
@csrf
{{-- ...入力欄... --}}
{!! $viewCaptcha ?? '' !!}
<button type="submit">送信</button>
</form>
有効なページ名(ステップ 4 のチェック項目と一致):register、forgot、contact、checkout。
よくあるトラブルと対処
- CAPTCHA 欄がどこにも表示されない → 順番に確認してください:プラグインを Enable したか、Site Key を入力したか、Shop Config → Captcha で ON にして、表示中のページに正しくチェックを入れたか(「動作条件」の章を再確認)。
- CAPTCHA 欄は表示されるが、送信すると必ずエラーになる → 多くの場合 Secret Key の誤り、または誤って v2 ではなく v3 のキーを登録したことが原因です。正しい v2 のキーを登録し直してください(ステップ 1)。
- Google が「無効なドメイン」と表示する/CAPTCHA 欄がドメインのエラーを出す → サイトのドメインが Google reCAPTCHA 管理画面の Domains 欄に追加されていません(ステップ 1、項目 5)。
- 試験用のパソコンで表示されない → キーの Domains 欄に
localhostを追加してください。
アンインストール
- Extension → Plugins を開き、GoogleCaptcha を探します。
- Disable をクリックすると一時的に無効になります。
- Uninstall をクリックすると完全に削除されます(保存済みのキー設定も削除されます)。
アップグレードに関する注記(バージョン 2.0)
- 新しいテーマ(TailAdmin/Livewire)で安定して動作するよう、reCAPTCHA v3 から reCAPTCHA v2 チェックボックスに切り替えました。固定のフォーム/ボタン ID には依存しなくなりました。
- 管理画面の設定画面を TailAdmin/Livewire で作り直しました。Site Key と Secret Key は以前と同じ
admin_configの行に保存されるため、設定済みの値はアップグレード後もそのまま保持されます。
Q&A(よくある質問)
Q1:プラグインは reCAPTCHA v2 と v3 のどちらを使いますか? バージョン 2.0 は v2 チェックボックス(「私はロボットではありません」のチェック欄)を使います。Google でキーを登録する際は、必ずこの種類を選んでください。
Q2:以前取得した reCAPTCHA v3 のキーを再利用できますか? できません。v3 と v2 のキーは別物です。ステップ 1 に従って、新しい v2 チェックボックスのキーペアを登録し直してください。
Q3:すべて有効にしたのに、会員登録ページに CAPTCHA 欄が表示されません。 動作条件を再確認してください。最も多い原因は、Shop Config → Captcha で**「会員登録」ページにチェックを入れていない**、または Site Key を入力していないことです。
Q4:CAPTCHA が一部のページにしか表示されず、他のページにはありません。 仕様どおりです。CAPTCHA は、ステップ 4 でチェックを入れたページにのみ、かつ GP247 がサポートするページ(会員登録、パスワード再設定、お問い合わせ、決済)の範囲でのみ表示されます。
Q5:reCAPTCHA は有料ですか? いいえ。Google reCAPTCHA v2 は通常の用途であれば無料です。
Q6:サイトのドメインを変更したら何をすればよいですか? Google reCAPTCHA の管理画面で、使用中のキーの Domains 欄に新しいドメインを追加してください(新しいキーを作る必要はありません)。
Q7:自分で作ったフォームに CAPTCHA を追加したい場合は?
「開発者向け」の章を参照してください。{!! $viewCaptcha !!} を <form> タグの内側に置き、コントローラーで gp247_captcha_processview(...) を呼び出します。旧バージョンのようにフォーム/ボタンの ID を宣言する必要はありません。
Q8:Secret Key を間違えて入力した場合、何か通知されますか? CAPTCHA 欄は通常どおり表示されますが、フォームを送信すると常に認証エラーになります。プラグインの設定画面に戻り、正しい Secret Key を入力し直してください。
Q9:プラグインをアンインストールすると、入力した Site Key/Secret Key は失われますか? Disable は一時的に無効にするだけで、キーは保持されます。Uninstall はキー設定を完全に削除するため、再度使う場合は入力し直す必要があります。
Q10:1.x から 2.0 にアップグレードする場合、キーを入力し直す必要がありますか? いいえ。キーは以前と同じ場所に保存されているため、そのまま保持されます。使用中のキーが v2 チェックボックス型であることだけ確認してください。以前 v3 を使っていた場合は、ステップ 1 に従って登録し直す必要があります。
📅 最終更新: 2026-10-22 · ✍️ 作成者 (Author): GP247
Ratings & reviews
Please sign in to write a review.
ログインNo reviews yet. Be the first to review this product.