2020.03.05

WordPressのユーザー登録後に自動ログインさせて任意ページにリダイレクトさせる方法

こんにちは、webエンジニアのゾノ( @ozonosho )です。

今回のブログではWordPressのユーザー登録後に自動ログインさせて任意ページにリダイレクトさせる方法を紹介したいと思います。

会員サイトであればたいていの場合、WordPressのユーザー登録フォームからユーザーが任意に会員登録できる仕様にすると思います。そして、会員サイトであればたいていの場合、登録後のユーザーにはプロフィールの設定などをおこなってほしいと思います。

しかしながらWordPressの標準仕様はかなりメンドクサイ作りになっていて、ユーザーが登録してからプロフィール設定ページ(=見てほしいページ)にたどりつくまでには下記の4ステップを踏まなければいけません。

  1. ユーザー登録フォームから会員登録
  2. メールアドレス宛に届くパスワード設定リンクからパスワードを登録
  3. ログインフォームからログイン
  4. ログイン後はトップページに飛ばされるので任意のページにいく

今回の記事は、③④の手間を1つにしちゃおうという話です。

さらに以前紹介した記事『WordPressのユーザー登録フォームにパスワード登録欄を追加する方法』では①②の手間を1つにする方法を紹介しているので、2つの方法を組み合わせれば下記の2ステップに減らすことができます。

  1. ユーザー登録フォームからパスワード設定も含めた会員登録←過去の記事で紹介
  2. 会員登録後はログインしてそのまま任意のページに飛ばされる←今回の記事の紹介

実際に僕の運営するサイト『未来地図』では、下図のようにユーザーが登録フォームから登録するとそのままログインしてマイページに飛ぶことができます。

▽登録フォーム

登録フォームから登録すると、そのままログインしてマイページに飛びます。

メチャ便利!

そんなわけで、前置きが長くなりましたがさっそく実装方法を見ていきましょう。

WordPressのユーザー登録後に自動ログインさせて任意ページにリダイレクトさせる方法

実装は簡単で、functions.phpに下記のコードを追加してください。

基本はたったこれだけです。
新規ユーザー登録直後に処理を加えられるアクションフック「user_register」を利用して、強制ログインとリダイレクトの処理を追加しています。

登録時に管理者やユーザー宛に通知メールを送信したい場合は、下記のようなコードを追加すれば実装できます。

さらに、以前紹介した記事『WordPressのユーザー登録フォームにパスワード登録欄を追加する方法』と組み合わせれば、ユーザー登録時にそのままパスワードを設定できたり、設定してもらったパスワードをユーザーに通知メールでお知らせすることもできたりするので、ぜひ色々と試してみてください^^

おわりに

以上、今回の記事ではWordPressのユーザー登録後に自動ログインさせて任意ページにリダイレクトさせる方法を紹介させていただきました。

当サイトではWordPressのカスタマイズ依頼を請け負っています。実現したい機能・要望がある方はぜひ下記ページよりご相談ください。

あなたのサイトに理想の機能を実装!WordPressカスタマイズサービス

本サービスはあなたのWordPressサイトに理想の機能を実装するサービスとなります。 どのような機能・要望でも実現可能です! Wo......

→この記事を読む