#WPで会員制サイトを作るには? という…

#WPで会員制サイトを作るには?
というような質問を良く頂きます。

会員制というと、Wordpressは会員機能が標準装備されているので、この応用で簡単に出来るはず、そう思いがちです。

しかし、それ以前に、会員制サイトと言っても色々なタイプがあり、どのタイプに当たるのかを考えたほうが良いと思います。

■簡易的な会員サイト・・・会員はすべてWPの管理画面を利用し、プロフィールや登録ページ等もWPのものを利用する。
■本格的な会員サイト・・・多くの会員属性を持ち、専用のマイページを持つ必要がある多機能なサイト

このどちらに分類されるかによって大きく手間が変わってきます。

もし後者のようなものを作りたい場合、プラグインを使わずに目的を達するのは難しいでしょう。やって出来ないことはないのですが、セキュリティや権限の管理や、ページ・リダイレクトなど考慮しないといけない部分が多いし、またせっかくのログイン機構(ログイン・ログアウト・パスワード回復など)を「再発明」するのはどう考えても無駄です(もちろん可能なのですが、そうするとWPを使う意味がなくなって来ます)

この分野でも「これが決め手」と呼べるようなプラグインは少ないのですが、最も有力な候補が「Theme My Login」というプラグインです。
https://www.jfarthing.com/development//theme-my-login/

ただしこのプラグインは全面的に英語優先で書かれており、日本語で使うにはひと手間必要です。

http://yahss.net/wordpress/653-theme-my-login-japanese-po-file/

大変多機能なのでここでは紹介しきれませんが、要するに会員サイトを作るための便利機能を満載したプラグインです。

このプラグインの良いところは、会員機能で使われる各種フォーム類がテンプレート化されていて、自由にカスタマイズすることが出来るという点です。つまりカスタマイズ仕事に「使える」ということです。

もっとも私自身は、カスタマイズするのはログインフォームくらいで、あとは大体自作しています。これは、ユーザー登録ページを出来る限り自由に作成したいという事と、ユーザーデータを登録や保存する時の後処理などを見通し良くして置きたいがために、あえてそうしています。特に画像のアップロードなども絡んでくると、テンプレートをカスタマイズするのが厄介になってきます。もう少しフックや内部関数を研究すればその必要もなさそうですが・・・

それから、結構厄介なログイン後、ログアウト後、エラー時などのリダイレクト処理も権限ごとにきめ細かく設定できます。特に、自前でログインフォームを作った場合、エラー時にWPのログインフォームに遷移してしまい修正するのに難儀してしまうこともあるのでこれは大変助かります。

その他、シングル版のWPでは標準装備されていないユーザーのメール認証も出来ますし、管理画面アクセス制限も出来たりと、なかなかの豪華パッケージになっています。

ユーザー登録データを付加したい場合、資料が無いとどうしたら良いのかが分からないかも知れませんが、幸い日本語のサイトで細かく解説してくれているサイトがあります。

http://yahss.net/wordpress/765-registration-form2-with-theme-my-login/

こちらのサイトは大変ためになるので、会員制サイトを構築したい方は是非目を通していただくと良いと思います。