MODxで会員制のページを作成する

MODxで会員制のページを作成する

ホームページでは、しばしばパスワードを知っているユーザーだけに公開したいページを作成したいという要望があります、
従来「.htaccess」を利用する方法が取られていました。
MODxではユーザ管理機能を使用します。

1.[ユーザ]-[ウェブパーミッション]-[ウェブユーザグループ]で、「accesses」ユーザグループを作成する。
3.[ユーザ]-[パーミッション管理]-[ドキュメントグループ]で、「DocAccess」ドキュメントグループを作成する。
4.[ユーザ]-[パーミッション管理]-[ユーザ/ドキュメントグループリンク]で、「accesses」ウェブユーザグループに「 DocAccess」ドキュメントグループを追加する。

5.[ユーザ]-[ウェブユーザの管理]で、「access」ユーザを作成する。
  アクセス許可で「accesses」を選択する。

6.[コンテンツ]-[フォルダの作成]で、[会員ページへようこそ]フォルダを作成する
  アクセス許可で、「Docaccess」を選択する。
  (作成するのはドキュメントでもかまいませんが、ここでは子ページを作成できるようにフォルダを作成します)
  (ドキュメント内の追加ドキュメントではフォルダのアクセス許可が引き継がれます)

サイトを見るとまだログイン前なので、6.で作成したフォルダはメニューには表示されていません。


次にパスワードを入力してログインするフォームを作成します。
管理画面からではなく、サイトからログインさせるには「WebLogin」スニペットを使用します。

7.スニペットを表示させるドキュメントに[[WebLogin? &loginhomeid=`56`]]と貼り付けます。loginhomeidの値は6.で作成したフォルダのドキュメントidです(管理画面の左ツリーで確認できます)。
[ページ設定]でキャッシュのチェックを外しておきます。
(TOPページに表示してもよいですし、専用のログインページを作成するのもよいでしょう。ただし、キャッシュを外す必要があるのでテンプレートに入れるのはおすすめできません。)

動作確認しましょう。
8.ログイン画面で、ユーザ名とパスワードを入力してログインします。

  成功すると会員ページが表示されます。メニューにも表示されます。
9.ログイン画面に戻ると「Logout」のリンクが表示されています。