Usersプラグインは会員制サイトを作るときに必要な便利な機能が入ったプラグインです。
Authコンポーネントで実装すれば自前でも作れるのですが、いざ作るとなると面倒。こういったプラグインがあれば使ったほうがいいでしょう。
インストール
必要な3つのプラグインをインストール。
#cd (インストールフォルダ)/cake/plugins #git clone https://github.com/CakeDC/users Users #git clone https://github.com/CakeDC/utils Utils #git clone https://github.com/CakeDC/search Search
準備
Usersプラグインのスキーマ機能を使ってテーブルの作成を行います。
#cd (インストールフォルダ) #./app/Console/cake schema create users --plugin Users
メッセージに従い処理をすすめるとuser_detailsとusersテーブルが作成されます。
次にメール送信のための設定を行います。
設定のためのファイルは以下ですが、ローカルのsmtpを使う場合や外部のサーバーを使う場合が考えられます。
ご自身の環境に合う設定を行ってください。
/app/Config/email.php
次に、配信に使うメールアカウントを下記のファイルに記述します。
app/Config/bootstrap.php
Configure::write('App.defaultEmail', 'example@example.com');
使ってみる
以下のURLにアクセスすると、追加用の画面が表示されます。
適当に入れてみましょう。
すると、設定したメールアドレスあてに”Account verification”というタイトルのメールが届くはずです。
本文にあるURLにアクセスすることで、登録が完了となります。
その他のURLは以下のようになっています。
ログイン
ログアウト
ユーザー一覧
ユーザー登録
パスワードを忘れた場合
使ってみるその2
デフォルトでは英語表示になってしまうので多言語対応でメッセージを切り替えます。
/app/Locale/jpn/LC_MESSAGES/users.poのmsgstrに適切な日本語を当てはめて入力していきます。
# cp -rp /app/Locale/eng /app/Locale/jpn # cp -p /app/Plugin/Users/Locale/users.pot /app/Locale/jpn/LC_MESSAGES/
困った
管理者用のサイトも用意されているようで、例えばいかで管理者用のトップページが表示されます。
http://(ドメイン)/users/users/admin_index
が、いろいろバグってます。リンクが全部おかしいくて、admin用のリンクに変わっていません。
また、ユーザーのプロフィールをuser_detailsテーブルで行うようなのですが、これらに関する説明が良くわからず…。
ちょっとこのままでは使えなさそうです。が、単純なユーザー登録の部分は問題なさそうなので、そこから先は自前で拡張していくのがよさそうです。