WordPressはブログや企業のHPなどで広く一般的に利用されるCMSですが、会員サイトとしても利用されることがあります。
会員サイトを構築するには、ログインアカウントの制御に加え、閲覧権限の制御を加える必要があり、WordPressの既存設定だと、未ログインユーザーが閲覧権限のあるページにアクセスした際、ヘッダーやフッター、メニューなどが閲覧できる状態である上に、コンテンツ部分にのみ制限がかかっているなど、UI/UXがイマイチな仕上がりになってしまい、満足いく会員サイトを構築するのには難しい仕様です。
そこで、専門的なスキルを必要とすることなく、クリックだけで会員サイトのように、未ログインユーザーからのアクセスについては、必ずログイン画面よりログインに成功しないと、制限のあるコンテンツへとアクセスできないWEBサイトを作成する方法をご解説します。
WordPressのプラグインである「Profile Builder」を使えば、コンテンツ部分だけでなく、WEBサイト全体をプライベートWeb サイトとして構築することができるため、会員サイトの構築にお役立てください。
P R

戦略立案から
WEBサイト構築・運営
までワンストップ対応
- Elementor Proを使ったWEBサイト制作案件が得意
- Crocoblock等の海外拡張プラグインで機能
- 内製のためお手頃価格で高品質のサービス
Contact:info@rad-labo.com
サービス概要はこちら:RAD
Profile BuilderでプライベートWEBサイトとして設定する
Profile Builderは、主にログインやユーザー登録、プロフィール編集やパスワード回復フォームなどをショートコードで簡単にページを作成することができるWordPress用のプラグインです。
以前、Elementorで作成したログイン画面でログイン失敗した際、デフォルトのログイン画面に切り替わってしまう問題を解決!でElementorの編集画面よりProfile Builderのウィジェットが扱えるようになり、ログイン画面を作成する方法を解説しましたが、今回は、プライベートWEBサイトとして設定するための方法をご解説します。

使用するWordPressプラグインは「Profile Builder」です。
-
-
User Profile Builder – Beautiful User Registration Forms & User Profiles – WordPress プラグイン | WordPress.org 日本語
Powerful user profile plugin for creating front-end user registration forms, login and user profile ...
ja.wordpress.org
クリックするだけで、WEBサイト全体をプライベートWEBサイト化することができる
WordPressのダッシュボードより、Profile BuilderのSettingsをクリックしてProfile Builder Settingsへアクセスします。

Profile Builder Settingsでは、タブ毎に制御する項目が並んでいますが、その内の1つに「Private Website」があるので、タブをクリックしてPrivate Website Settings画面に切り替えます。
Private Website SettingsにはプライベートWEBサイト化した際の仕様について調整する項目が並んでいます。
WEBサイト全体をプライベートWEBサイト化するには、Enable Private Websiteで「はい」を選択して、ページ下部の「変更を保存」をクリックするだけで設定は完了です。

プラグインのインストールから設定完了するまで、全てクリックのみでできちゃいます!
任意のログイン画面へリダイレクトさせる方法
先ほど、Enable Private Websiteで単にプライベートWEBサイト化しただけだと、WordPress標準のログイン画面へリダイレクトがかかるようになります。
会員サイトであれば、会員様の入り口になる部分なので、オリジナルのログイン画面を作ることがほとんどです。
そこで、オリジナルで作成したログインページがある場合は、Private Website SettingsのRedirect toより、作成したログインページを指定することで、WordPress標準のログインページへリダイレクトすることなく、任意のログインページへとリダイレクトさせることができるようになります。
また、ログインに失敗した場合でも、Profile Builderで作成したログインフォームであれば、WordPress標準のログイン画面に切り替わることがないため、Profile Builderで作成することをお勧めします。
ロックアウト時の回避方法

誤ってログインフォームを設置していないページをPrivate Website SettingsのRedirect toより指定して設定を保存してしまった場合、ログアウトすると、当然ながらログインする項目がないため、ロックアウトされて締め出されてしまうことが発生します。
その場合は、ドメインの後ろに「/wp-login.php?wppb_force_wp_login=true」を入力してアクセスすると、強制的にWordPress標準のログイン画面である「wp-login.php」へアクセスすることができるようになります。

ロックアウトの回避ができない場合は、サーバーよりProfile Builderのプラグイン自体を削除することで、設定がリセットすることができます。ロックアウトにならないためにも設定は慎重に行なってください。
ロックアウトで締め出されないためにも、Redirect toで指定するページにはログインフォームが入っている事を確認しましょう。
任意のページやパスのみを未ログインでも表示できるようにする方法
Profile Builderを使用することで、WEBサイト全体をプライベートWEBサイト化する事ができますが、一部のページのみを一般公開したいケースもあると思います。
その際、下記項目より公開するページやパスを設定する事で、未ログインでもアクセスできるようになります。
Allowed Pagesで特定のページへのアクセスを許可する

項目をクリックすると、プルダウンで固定ページを指定することができます。特定の対象ページについてアクセスを許可したい固定ページを指定する事で、未ログインでもアクセスすることができるようになります。
Allowed Pathsで特定のパスへのアクセスを許可する

Allowed Pathsでは、固定ページに限らず、指定するパスへのアクセスをログインしていないユーザーにも許可することができます。
例えば「https://example.com/some/path/」を除外する場合、項目に、「/some/path/」または「/some/*」で入力します。この際、ワイルドカードである「*」もサポートされており、「/some/*」とした場合、「/some/」のルート配下すべてに対してアクセスを許可することも可能です。
未ログイン時はメニューを表示させない

ログイン画面やその他、アクセスを許可したページにてメニューを設定している場合、メニューにあるコンテンツをログインしていないユーザーに対して表示をしたくない場合があります。
Hide all Menuesより「はい」を選択する事で、未ログインのユーザーに対してメニューを非表示にすることができるようになるため、必要に応じて調整してみてください。
REST-APIの制御でセキュリティを確保
REST-APIは、Webサービス間でのデータ通信と操作を可能にするための標準的なインターフェース規約です。WordPress REST APIを利用することで、管理画面を通さずにWordPressの投稿や編集、更新、削除が可能になるのですが、これらの制御に対してコマンドを許可するか否かについて設定することができます。
基本的に外部サービスとの接続を想定していない場合は、「いいえ」にしておく事を推奨します。
Profile Builderは会員サイトが簡単に作成できるお勧めのWordPressプラグイン
ここまで、会員サイトを作成するために必要なWEBサイト全体の制御として、Profile Builderを使ってプライベートWEBサイト化する方法を解説しました。
より充実した会員サイトを作成するには、アカウントの制御だったり、ユーザー毎に情報を出し分けたりと高度な設定が必要になりますが、会員サイトを立ち上げる第一歩としてProfile Builderは有用だと思います。

是非、参考にして会員サイトを作成してみてください。