Movable Type 4 のコミュニティ機能(その2:サインアップユーザーの権限自動付与とロールのカスタマイズ)
コミュニティブログ・コミュニティ掲示板では、新規ユーザーはブログ画面上からサインアップすることができます。
そしてサインアップしたユーザーは、管理画面ではなく、ブログのページ上からブログ記事の投稿やトピックの作成が行なえます。
その前段として、新規ユーザーがサインアップしたときに、自動的に必要な権限を与える設定を行なっておけば、管理者は登録ユーザーの権限を手動jで毎回与える必要はなくなります。
上記の権限の自動付与のために必要な設定を紹介します。なお、Movable Type のインストール時にメールの設定が行なわれていることが前提です(メールは環境変数を利用すれば後で設定することも可能ですがここでは割愛します)。
1.システムのメールアドレスを設定する
まず、前提として、システム管理画面の「設定」→「全般」でシステムのメールアドレスを設定します。この設定を行なわないと、ユーザー登録時に、登録ユーザーが入力したメールアドレスに確認用のメールが送信されないようです。
2.サインアップユーザーに権限を自動付与する
システム管理画面の「一覧」→「ユーザー」→「権限」、またはブログ管理画面の「システムメニュー」→「ユーザー」→「権限」で権限設定画面に進み、「ユーザーに権限を付与」をクリック。
「(新規ユーザー)」を選択して「次へ」をクリック。
ここでは「ライター」を選択して、「確認」をクリック。
登録後の権限画面はこのように表示されます。
サインアップしたユーザーがサインインすればブログ記事投稿画面が表示されます。
3.ロールのカスタマイズ
ただし、「ライター」の権限には「ブログ記事の公開」という権限がありません。つまりブログ記事を投稿しても、管理者の承認がなければブログ記事は公開されません。投稿後は「投稿を受付ました」となります。
ブログ記事一覧画面上は承認待ちになります。自分で公開状態を変更することはできません。
下の画面は、公開権限のないユーザーでサインインしたときのブログ記事編集画面です。
ちなみにこれは、公開権限のあるユーザーでサインインしたときのブログ記事編集画面です。
コミュニティユーザーの権限は「ブログ記事の作成」「ブログ記事の公開」「コメント投稿」のようですが、この3つを同時に与え、なおかつ他の権限を与えないというロールは、デフォルトでは用意されていないようです。
ということで、「コミュニティ」という新しいロールを作り、そのロールで権限の自動付与を行なうようにカスタマイズします。
システム管理画面の「一覧」→「ユーザー」→「ロール」で「新しいロールを作成」をクリック。
ロール名に「コミュニティ」、権限の一覧にある「ブログ記事の作成」「ブログ記事の公開」「コメントの送信」をチェックして、「変更を保存」をクリック。
これで「コミュニティ」というロールができたので、「新規ユーザーに権限を自動付与する設定をする」の作業をやり直し、作成作業の中で、「コミュニティ」を選択します。
権限画面はこうなります。
新規ユーザーでサインアップして、サインイン後、ブログ記事を投稿すると「投稿を公開しました」と表示されます。
ブログ記事が自動的に公開されました。
ちなみにこの権限であればブログ記事の編集もできます。「すべてのブログ記事の編集」という権限を与えてしまうと、ブログ管理画面にログインしたときに、他のユーザーのブログ記事も編集できてしまうので気をつけましょう。
- Movable Typeの記事をお気に入り順に並べて表示する方法
- Movable Typeのコミュニティ機能で投票できない不具合を解消する
- Movable Typeのコミュニティ機能でCKEditorを利用する
- コミュニティ機能のテンプレートのインクルード関係図
- コミュニティのカスタムフィールドの表示順序を入れ替える
- Movable Typeでコミュニティ機能のプロフィールページにタブを追加する方法
- コミュニティソリューションのプロフィールページに関する Tips
- Movable Type 4 のコミュニティ機能(その1:プロフィール画面)