2026年5月29日
2026年5月29日
WordPressの新規ユーザー登録を管理者の承認制にする設定方法
WordPressで「だれでも登録はできるが、管理者が承認するまでログインできない」状態にしたい場合、WordPress本体にはその機能がありません。承認の機能を持つプラグインを入れるか、承認待ちの状態を管理する小さなコードを追加します。
この記事では、標準の設定の確認から、プラグイン(New User Approve)での設定の流れ、運用で問題になりやすい通知メールとスパム登録への対策までを説明します。内容は2026年10月時点のものです。コードで自作する方法は、WordPressで管理者承認制の会員登録フローを実装する方法で詳しく説明しています。
WordPress標準の登録の仕組みを確認する
WordPressの標準の登録は、次のように動きます。
- 「設定」→「一般」の「メンバーシップ」で「だれでもユーザー登録ができるようにする」にチェックを入れると、ログイン画面(
wp-login.php)に登録用のリンクが表示される - 訪問者がユーザー名とメールアドレスを入れて登録すると、本人にパスワード設定用のリンクがメールで届き、管理者にも新規登録の通知メールが届く
- 本人がパスワードを設定すると、そのままログインできる
つまり、標準では管理者が確認する前にログインできる状態になります。承認制にするには、3のログインの段階で、承認待ちのユーザーを止める仕組みが必要です。
あわせて、同じ画面の「新規ユーザーのデフォルト権限グループ」を確認します。通常は「購読者」にします。ここを「管理者」や「編集者」にしていると、登録しただけで記事やサイトの設定を変えられるユーザーが作られてしまいます。
マルチサイトの場合は、登録の仕組みが別で、確認メールのリンク(wp-activate.php)で有効化する流れになります。この記事はシングルサイトを前提にしています。
方法の選び方
| 方法 | 向いている場合 |
|---|---|
| 承認に特化したプラグイン(New User Approve など) | 標準の登録画面をそのまま使い、承認の手順だけを足したい |
| 会員サイト用のプラグイン(Ultimate Member、User Registration & Membership など) | 登録フォームの項目を増やしたい、有料会員やコンテンツの制限も必要 |
| 自作のコード | プラグインを増やしたくない、承認の条件を細かく決めたい |
会員サイト用のプラグインにも、登録後の状態を「管理者の承認待ち」にする設定を持つものがあります。ただし、無料版で使えるかどうかはプラグインや版によって違うため、導入前に各プラグインの説明で確認してください。以下では、標準の登録画面に承認を足す New User Approve の例で説明します。
New User Approveで承認制にする
New User Approve は、WordPress.org で配布されている、新規登録の承認に特化したプラグインです。公式の説明によると、次のように動きます。
- 新しいユーザーが登録すると、管理者に通知メールが届く
- 管理者が登録を承認または拒否すると、結果がユーザーにメールで知らされる
- 承認されたユーザーはログインできるようになり、承認待ち・拒否のユーザーはログインできない
- プラグインを入れる前からいるユーザーは、自動的に承認済みとして扱われる
- 承認の状態は後から変更できる
手順
- 作業の前にサイトのバックアップを取る
- 管理画面の「プラグイン」→「新規プラグインを追加」で「New User Approve」を検索し、インストールして有効化する(WP-CLI でのコマンドは手順の後に記載)
- 「設定」→「一般」で「だれでもユーザー登録ができるようにする」にチェックが入っているか、「新規ユーザーのデフォルト権限グループ」が「購読者」かを確認する
- ログアウトした状態(別のブラウザやプライベートウィンドウ)で、テスト用のメールアドレスを使って登録してみる
- 管理者に通知メールが届くこと、テスト用のユーザーが承認前にログインできないことを確認する
- プラグインが管理画面に追加する承認用の画面で、テスト用のユーザーを承認し、承認のメールが届くこと、ログインできるようになることを確認する
- 確認が終わったら、テスト用のユーザーを削除する
WP-CLI を使う場合、手順2は次のコマンドでも行えます。
wp plugin install new-user-approve --activate
承認待ちの人に表示するメッセージなどの設定項目や画面の名前は、プラグインの版によって変わることがあります。招待コードでの自動承認や、特定のドメインのメールアドレスの自動承認などは有料版(Pro)の機能です。
通知メールを届くようにしておく
承認制では、「管理者への新規登録の通知」「ユーザーへのパスワード設定のメール」「承認・拒否の通知」と、メールが届くことが前提になります。WordPressの初期設定の送信方法(PHPの mail() 関数)では、迷惑メールに入ったり届かなかったりすることがあります。
運用を始める前に、SMTPプラグインなどでメールの送信を認証のある送信サービス経由にし、テストメールが届くことを確認しておきます。プラグインの選び方はWordPressのSMTPプラグイン比較で説明しています。
管理者への通知が届く宛先は、「設定」→「一般」の「管理者メールアドレス」です。普段確認しているアドレスになっているかを確かめてください。
スパム登録への対策
承認制にすると、ボットが登録してもログインはできませんが、承認待ちのユーザーが大量にたまり、そのたびに通知メールが届きます。登録画面には、次のような対策もあわせて入れておくと、確認の手間を減らせます。
- 登録フォームに CAPTCHA(reCAPTCHA や Cloudflare Turnstile など)を付ける。多くのセキュリティ系プラグインや会員プラグインに、ログイン画面・登録画面への追加機能がある
- 拒否したユーザーや、長期間承認しないまま残っているユーザーは、定期的に削除する。不要な個人情報(メールアドレス)を持ち続けないためにも有効
- 登録を受け付ける必要がなくなったら、「だれでもユーザー登録ができるようにする」のチェックを外す
登録後の権限と記録について
承認したユーザーに与える権限は、標準の権限グループ(購読者・寄稿者・投稿者・編集者・管理者)から、必要最小限のものを選びます。標準の権限グループで足りない場合は、権限を編集できるプラグインで独自の権限グループを作れます。New User Approve にも権限を編集する機能が含まれています。
だれがいつ登録・承認したかを残しておきたい場合は、管理画面での操作を記録するログ系のプラグインを使います。
まとめ
- WordPress本体には登録の承認機能がない。標準では、登録した人はパスワードを設定するとすぐにログインできる
- 「新規ユーザーのデフォルト権限グループ」は「購読者」にしておく
- 標準の登録画面に承認だけを足すなら New User Approve、フォームや会員機能も必要なら会員サイト用のプラグイン、細かく決めたいならコードで自作する
- 承認制は通知メールが届くことが前提。SMTPの設定とテスト送信を先に済ませる
- CAPTCHA と、拒否・放置されたユーザーの定期的な削除で、スパム登録の手間を減らす
関連記事: