2026年5月21日
2026年5月21日
WordPressにGoogleログインを追加する方法|OAuthクライアント作成とプラグイン設定
WordPressのログイン画面に「Googleでログイン」のボタンを付けると、利用者はGoogleアカウントでログインでき、WordPress用のパスワードを覚えておく必要がなくなります。仕組みはGoogleのOAuth 2.0(OpenID Connect)で、Google側で発行したクライアントIDとシークレットをWordPressのプラグインに設定するだけで使えます。
この記事では、Googleログインだけに絞った軽量なプラグイン「Log in with Google」を例に、Google Cloud側の設定からWordPress側の設定、動作確認までを説明します。画面の名称は2026年10月時点のものです。
準備するもの
- HTTPSで表示できるWordPressサイト(GoogleのOAuthクライアントには、ログイン後に戻ってくるURLを登録します)
- Googleアカウント(Google Cloudのプロジェクトを作るため)
- WordPressの管理者アカウント。Googleログインがうまく動かなかったときのために、通常のユーザー名とパスワードでのログインも残しておきます
プラグインの選び方
Googleログインを追加できる主なプラグインは次のとおりです。いずれも wordpress.org で配布されています。
| プラグイン | 特徴 |
|---|---|
| Log in with Google | Googleログインだけの軽量なプラグイン。設定項目が少なく、wp-config.php の定数でも設定できる |
| Nextend Social Login and Register | 無料版でGoogle・Facebook・X(旧Twitter)に対応。複数のSNSログインをまとめて入れたい場合向け |
| Site Kit by Google | Googleの公式プラグイン。アナリティクス等の連携に加えて、「Sign in with Google」の機能を持つ |
社内向けサイトや管理者だけが使うサイトなら、設定が少ない Log in with Google が扱いやすい選択です。複数のSNSに対応したい会員サイトなら Nextend Social Login を検討します。以下は Log in with Google での手順です。
ステップ1:Google CloudでOAuthクライアントを作る
Google Cloud コンソールにログインし、画面上部のプロジェクト選択から新しいプロジェクトを作ります(既存のプロジェクトを使ってもかまいません)。
同意画面(Google Auth Platform)を設定する
- メニューの「Google Auth Platform」を開き、「開始」(Get started)を押す
- アプリ名とユーザーサポートのメールアドレスを入力する
- 対象(Audience)を選ぶ。「内部」(Internal)は、Google Workspace の組織に属するプロジェクトだけで選べ、その組織のユーザーだけがログインできる。一般の利用者にも使わせる場合は「外部」(External)を選ぶ
- 連絡先のメールアドレスを入力し、ポリシーに同意して作成する
「外部」を選んだ場合、公開ステータスが「テスト中」の間は、「対象」の画面で追加したテストユーザーしかログインできません。動作確認が終わったら、同じ画面から本番環境へ公開します。
OAuthクライアントIDを作る
- 「Google Auth Platform」の「クライアント」(Clients)を開き、「クライアントを作成」を押す
- アプリケーションの種類で「ウェブ アプリケーション」を選ぶ
- 「承認済みのリダイレクト URI」に、WordPressのログインページのURLを追加する
https://example.com/wp-login.php
example.com は自分のサイトのドメインに置き換えます。WordPressをサブディレクトリに置いている場合は https://example.com/wp/wp-login.php のように、実際のログインページのURLを登録します。ここが1文字でも違うと、ログイン時に Google の画面で redirect_uri_mismatch エラーになります。
「作成」を押すと、クライアントIDとクライアントシークレットが表示されます。シークレットは後から表示できない場合があるため、この時点で控えておきます。
ステップ2:プラグインをインストールして設定する
管理画面の「プラグイン」→「新規プラグインを追加」で「Log in with Google」を検索し、作者が rtCamp のプラグインをインストールして有効化します。WP-CLI なら次のとおりです。
wp plugin install login-with-google --activate
設定方法は2つあります。
- 管理画面:「設定」→「Login with Google」を開き、「Client ID」と「Client Secret」を入力して保存する
- wp-config.php:定数で書く。値がデータベースに保存されず、管理画面からも書き換えられないので、こちらをおすすめします
<?php
// wp-config.php の「編集が必要なのはここまでです」より上に追加
define( 'WP_GOOGLE_LOGIN_CLIENT_ID', 'your-client-id.apps.googleusercontent.com' );
define( 'WP_GOOGLE_LOGIN_SECRET', 'your-client-secret' );
// 任意: Googleログインでの新規ユーザー作成を許可する
define( 'WP_GOOGLE_LOGIN_USER_REGISTRATION', true );
// 任意: 新規作成を許可するメールアドレスのドメイン(カンマ区切り)
define( 'WP_GOOGLE_LOGIN_WHITELIST_DOMAINS', 'example.com' );
ステップ3:ユーザーの扱いを決める
Log in with Google は、Googleアカウントのメールアドレス(Google側で確認済みのもの)で、WordPressの既存ユーザーを探します。
- 同じメールアドレスのユーザーがいる場合:そのユーザーとしてログインする。権限はWordPress側の設定のまま
- いない場合:新規作成が許可されていればユーザーを作り、許可されていなければログインを拒否する
新規作成は、設定画面の「Create New User」にチェックを入れるか、定数 WP_GOOGLE_LOGIN_USER_REGISTRATION で許可します。このチェックを入れると、「設定」→「一般」の「だれでもユーザー登録ができるようにする」がオフでも、Googleログインからはユーザーが作られます。作られたユーザーの権限は、「設定」→「一般」の「新規ユーザーのデフォルト権限グループ」になります。
社内向けサイトでは、「Whitelisted Domains」(定数なら WP_GOOGLE_LOGIN_WHITELIST_DOMAINS)に自社のドメインを入れ、そのドメインのメールアドレスだけが新規登録できるようにします。ただし、この制限がかかるのは新規作成だけです。既にWordPressにいるユーザーは、ドメインに関係なくGoogleでログインできます。
ステップ4:動作を確認する
- ブラウザのプライベートウィンドウで
https://example.com/wp-login.phpを開き、ログインフォームに「Login with Google」のボタンが出ていることを確認する - ボタンを押してGoogleアカウントを選び、WordPressにログインできることを確認する
- 新規作成を許可した場合は、まだWordPressにいないアカウントでも試し、「ユーザー」一覧で作られたユーザーの権限を確認する
ログインページ以外にボタンを置きたいときは、ショートコード [google_login] を固定ページなどに書きます。
うまくいかないときは、次の点を確認します。
redirect_uri_mismatch:Google側に登録したリダイレクトURIと、実際のログインページのURL(https・wwwの有無・サブディレクトリ)が一致しているか- Google の画面でアクセスがブロックされる:同意画面が「テスト中」のままで、ログインに使ったアカウントがテストユーザーに入っていない
- 「Registration is not allowed.」と表示される:新規作成が許可されていない。既存ユーザーと同じメールアドレスのGoogleアカウントで試すか、新規作成を許可する
注意点
- クライアントシークレットは、テーマのファイルや公開リポジトリに書かないでください。wp-config.php の定数で管理し、漏れた疑いがあればGoogle Cloud側で新しいシークレットを発行して差し替えます
- Googleアカウントのメールアドレスで既存ユーザーと結び付くため、管理者ユーザーのメールアドレスは自分が管理しているものにしておきます
- Googleログインだけに頼らず、管理者のパスワードログインを残しておくと、Google側の設定ミスや障害のときにも管理画面に入れます
- 管理者アカウントは、Google側で2段階認証プロセスを有効にしておくと、Googleアカウントが乗っ取られる危険を減らせます
まとめ
- Google Cloud で同意画面(Google Auth Platform)とOAuthクライアント(ウェブ アプリケーション)を作り、リダイレクトURIに
https://自分のドメイン/wp-login.phpを登録する - Log in with Google にクライアントIDとシークレットを設定する。wp-config.php の定数での設定がおすすめ
- 既存ユーザーとはメールアドレスで結び付く。新規作成を許可するなら、ドメインの制限と既定の権限を確認する
- 公開ステータスが「テスト中」のままだとテストユーザー以外はログインできない。確認後に本番へ公開する