新・元地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記

自由な20代、窮屈な30代を経て、遂に40代になっちまったWebディレクター&パソコン講師の覚書と思う言(こと)。略称【ちほちゅう】

*

WordPress(ワードプレス)を会員制のサイトにする方法2 #wp

      2014/11/09

  • このエントリーをはてなブックマークに追加

1年以上前の記事です。内容が古い可能性があります。

先日、紹介した方法では、

  1. 部分的にオープンに出来ない。(全体がクローズドになってしまう。)
  2. 会員登録時に管理者側で検閲することができない。

等の問題がありました。
これを解決する会員制サイト(ブログ)の作り方です。

用意するもの(プラグイン)。

  • Theme My Login
    会員登録に管理者の承認を必要にすることができるプラグイン。

□ WordPress | 日本語
当ブログワードプレス関連の記事

スポンサーリンク
 

以前のやり方はプラグイン(Angsuman’s Authenticated WordPress Plugin)をインストールすることでサイト全体にアクセス制限(ログインしていないと見れない)をかけました。
今回はアクセス制限(ログインしていないと内容を表示させない)のための表記を加えた「固定ページテンプレート」を用意してそれを、会員専用ページにのみ適応させるという方法を取ります。

固定ページを作るときにテンプレートを設定する。
会員専用ページの作成方法

従って固定ページであれば個別にアクセス制限をかけることができますが、ブログ(投稿)の場合はブログ全体にアクセス制限をかけるしかありません。
この辺り、セキュリティ上の問題を度外視すれば工夫次第で色々できると思います。

まずは「Theme My Login」の解説の前にその方法を解説します。
非常に簡単です。

<!--?php if (!is_user_logged_in()){auth_redirect();} ?-->

こちらの表記をテンプレート内のHTML部分の先頭に配置すればOK。
PHPプログラム内であれば

if (!is_user_logged_in()){auth_redirect();}

になります。
これを必要に応じて「外観」→「テーマ編集」でテンプレートに書き加えていけばいいわけです。

これだけでひとまずアクセス制限はできるのですが、これだと前回同様、外部から来た方が会員になれないので、
「設定」→「一般」→「メンバーシップ」の「だれでもユーザー登録ができるようにする」にチェックを入れて「変更を保存」
メンバーシップを変更

 これで、ID入力画面からどなたでもIDを取得することができるようになります。
登録可能なログイン画面
「登録」というリンクが現れ、こちらから会員登録ができるようになる。
(ここは前回と全く同じ。原稿もコピペですすみません。)

ただしこれだと逆に誰でも会員になれてしまうので問題があります。
前回はここまでだったのですが「Theme My Login」をインストール、設定することで、管理人認証をさせることができます。
まずは「Theme My Login」をインストールします。
「プラグイン」→「プラグインの検索」→「いますぐインストール」→「プラグインを有効化」で簡単に。
ThemeMyLoginインストール

続いて各種設定、
「設定」→「Theme My Login」へ行き、「User Moderation を有効にする」にチェックを入れて「変更を保存」
ユーザーアカウント取得を管理01

すると「一般」タグの右に「承認」タグが現れるのでこちらをクリック。
ユーザー承認を「管理者承認」にして「変更を保存」
ユーザーアカウント取得を管理02

以上ですべての設定が終了しました。
なお、新規会員登録の流れは以下のようになります。

  1. ユーザー側がサイト上からフォームで登録。このとき入力するのはメールアドレスとIDのみ。
    会員登録の流れ01
  2. 管理者にメールでその旨が報告される。こちらに認証のためのURLが書かれている。
    会員登録の流れ02
  3. メールに書かれたURLをクリックして、管理サイトにアクセスしユーザーを承認する。
    会員登録の流れ03
  4. ユーザー側に認証された旨がメールで届く。こちらに任意で作られたパスワードが書かれている。
    パスワードはユーザー側で変更可能。
    会員登録の流れ04
なお、「Theme My Login」をインストールすると「login」というログイン用固定ページが用意され、こちらをカスタマイズすることでオリジナルのログイン用ページを作ることができます。

以上なのですが、ここで感のいい人は前回の「Angsuman’s Authenticated WordPress Plugin」を使った設定と、今回の「Theme My Login」を使った設定を組み合わせて使えないかと考えると思います。
僕もそれ、考えたのですがそれぞれの仕様の食い違いでちゃんと動いてくれませんでした。
個人的には今回の「Theme My Login」を使った方法さえ覚えておけば良いと思います。
Angsuman’s Authenticated WordPress Plugin」を使った方法のほうがお手軽ですけどねぇ。

 - CMS, WordPress, プログラミング, 覚え書き , ,

アドセンス広告メイン

Message

メールアドレスが公開されることはありません。

  関連記事

タンブラー(Tumblr)とブログの連携をひとまずやめた

1年以上前の記事です。内容が古い可能性があります。タンブラー(Tumblr)って …

「ノラ電波」危険、暗号化されていないWi-FiにつなぐとFacebookが乗っ取られる恐れ

1年以上前の記事です。内容が古い可能性があります。「ノラ電波」というのを知ってい …

Facebookでも通用するツイッターの常識「@」

1年以上前の記事です。内容が古い可能性があります。最近はツイッター以上にFace …

WordPress(ワードプレス)でサイトマップ「Google XML Sitemaps」 #wp

1年以上前の記事です。内容が古い可能性があります。プロット・ファクトリーをWor …

スマホ(スマートフォン)やノーパソ(ノートパソコン)の省エネ技。ブラウザの無駄なタブは閉じるべし

1年以上前の記事です。内容が古い可能性があります。パソコンでのデータのようですが …

パズドラ(パズル&ドラゴンズ)課金プレイヤーはネットでの情報入手が必須!

1年以上前の記事です。内容が古い可能性があります。パズドラの課金地獄にハマりつつ …

no image
使わなくなったデータCDどうする?

1年以上前の記事です。内容が古い可能性があります。「個人情報保護法」なんてのが施 …

100円パソコン詐欺にあったら

1年以上前の記事です。内容が古い可能性があります。以前話題にしたイーモバイルがや …

iPhoneでツイッターの新規アカウントを作成する方法

1年以上前の記事です。内容が古い可能性があります。以下の記事に対して「できない」 …

「引用」と「転載」と「無断転載」の違い

1年以上前の記事です。内容が古い可能性があります。以前、引用と転載の違いをまとめ …

血液型オヤジ