Simple Membershipでログインしていないユーザーを自動リダイレクト(サイト全体を保護する)

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

本日はワードプレスの会員サイト構築プラグイン「Simple Membership」のカスタム方法。シンプルメンバーシップでは会員に向けて有料会員限定の記事を書いたり、無料会員向けの記事を書くなどさまざま会員向けコンテンツを構築可能です。当然ですが通常通り一般公開している普通の記事もかけます。

会員サイトをどういった構成にするかは構築前に確定しておく必要がありますが、今回ご紹介する方法は「会員以外のユーザーがサイトにアクセスするとすぐログインページに自動的にリダイレクトする機能」です。

つまり、まだ会員になっていないユーザーがサイトにアクセスした段階で「即ログインページを表示」させることで「このページは会員以外は使えないサイトです」ということを明示するために使います。

Simple Membershipでログインしていないユーザーを自動リダイレクト(サイト全体を保護する)

カンタンに言えば「サイト全体に保護」をかけて、ログインしたメンバーだけがサイトのさまざまなページにアクセスできるようにする方法です。非会員は強制的にログインページにリダイレクトされる仕様。

カスタマイズはテーマの「functions.php」で行います。

/* Simple Membership で会員以外は自動的にログインページを開く */
add_filter( 'pre_get_posts', 'swpm_auto_redirect_non_members' );
function swpm_auto_redirect_non_members() {
	if (is_admin()){
		//管理者の場合は何もしない
		return;
	}
	//来訪者がサイトに訪れたら指定のURLにリダイレクト(強制転送)する
	if( !SwpmMemberUtils::is_member_logged_in() && !is_page( array( 'membership-login', 'membership-join' )) ) {
		wp_redirect( 'http://example.com/membership-login' );
		exit;
	}
}

当然ですが、リダイレクトURLは各環境に合わせて書き直す必要があります。またスラッグを変更している場合は変更しましょう。サイトにログインしていないユーザー(一般来訪者)はログインページが表示される仕組みです。ログインページに「会員登録」のリンクも貼っておくとより親切です。

まとめ

ワードプレスで会員サイトを作ると言ってもあらゆる形態パターンが存在しています。もっともシンプルなのは「非ログイン(一般ユーザー)とログイン(有料会員)の2種類」だけで運用する構成、少し複雑にすると「非ログイン(一般ユーザー)とログイン(無料会員)とログイン(有料会員)の3パターン」の運営。

そして今回ご紹介したカスタマイズでは「非ログイン(一般ユーザー)」をログインページに自動転送することでコンテンツの閲覧はできない状態を実現可能です。言うまでもありませんがもし「ログインページへの自動転送」をかけなければ『非ログイン(一般ユーザー)』もコンテンツを閲覧することはできます。

Simple Membershipはシンプルな会員サイト構築プラグインですが、会員サイトという仕組みは想像している以上に複雑なのでどういった構成で運用するのかがもっとも重要となります。会員の種類や細かな制御が増えれば増えるほど作成費用やカスタマイズ費も膨らむのでシンプルな構成で運用するのがおすすめです。

最新式の無料プラグインを事前公開

WordPressは公式サイトに登録されているプラグインだけでは機能を補足しきれません。当サイトでは使いやすさを追求した魅惑的なプラグイン無料でダウンロードいただけます。運営ホームページのマーケティング力をさらに高めるチャンスです。まずは無料でDLしてお試しくださいませ。
改良されたプラグインを確認する