BlogSection

提供: GeeklogJpWiki

[3]運用方法 > 3.クイックハウトゥー > 話題(記事カテゴリ)毎に管理権限を分離させて複数ブロガー参加

以下,Geeklogで複数ブロガー参加型サイトを運営する方法をご紹介します。マルチユーザーCMSとしてはWordPress MUがあります。Geeklogでもある程度可能ですが,専用CMSを組み込むこともご検討ください。WordPress MUを使えば,ブロガー承認からブロガーごとのテーマ変更まで行うことが可能です。

目次

話題(記事カテゴリ)毎に管理権限を分離させて複数ブロガー参加

方法1:自身の投稿記事のみ編集できるが話題は編集できない

話題の中に複数の投稿者がいる設定です。

Geeklogの基本機能で設定できます。

  • ユーザの管理権限は,Story Adminのみ。Topicを追加しないでください。(Topicを追加すると話題まで編集できてしまいます。)
  • 話題の管理権限を細工して,所有者を「ゲストユーザ」,グループ「 All Users」にしてください。
  • 話題のパーミッションは,3 3 2 2
  • 記事は,3 2 2 2

話題の所有者をゲストユーザにするのは,話題譲渡プラグインで行えます。   これで,ユーザは,記事を作成できて,自分が所有している記事だけ編集・削除が可能です。話題は管理権限がないので一切編集できません。

なお,投稿時に話題を特定したい場合には,admin/story.phpをコピーして,たとえばadmin/story_user.php として,admin/story_user.phpから呼ばれるテンプレートファイル(storyeditor_advanced.thtml)を変更してたとえば「storyeditor_advanced_user.thtml」とし,そのテンプレートでは,特定の話題しか選べないように修正しておきます。

ユーザへは,ログイン時にadmin/story_user.phpを表示させます。


方法2:自身の投稿記事と,自身が投稿する話題を管理

話題ごと管理する設定です。

話題(記事カテゴリ)毎に、投稿できるユーザIDを制限するハックを追加することで制限します。そのユーザは、投稿できる話題にしか、投稿できず、自身が投稿した記事は編集することができます。

ハック1で、記事投稿画面で権限のある話題しか選択できないよう、投稿先の制限を行う必要があります。さらに、ハック2で、記事編集管理画面で,編集できる話題だけをリストさせます。

話題譲渡(nmoxtopicown)プラグインをインストールすれば,話題の所有者としてゲストユーザを設定することができます。これで,だれでもログインしたらゲストユーザが所有者の話題に投稿でき,しかも,自身の記事は編集できます。

記事投稿の際,パーミッションは、話題、記事それぞれ (3,2,2,2)にします。これで記事・話題の管理者であっても所有者しか編集できません。パーミッションのデフォルトは,コンフィギュレーションエディタプラグインで設定できます。


ハック1.投稿先話題を権限のある話題のみに制限する

投稿先話題を権限のある話題のみに制限するを参照してください。

この場合、ログインしなければ、投稿できる話題を選べないことになります。そのためconfig.phpで、記事投稿をloginrequired ONにしておいてください。

※投稿先の制限を行う方法は、その他,メール記事投稿機能を利用する方法があります。初期設定ファイルに送信元アドレスと、投稿先話題名を設定しておけば、他の話題へ間違って投稿することはありません。

ハック2.サイト管理者が、記事編集一覧ページで所有記事のみリストして編集する

admin/story.php 127行目付近

       $topicsql = "SELECT tid,topic FROM {$_TABLES['topics']}" . COM_getPermSQL ();

     ↓

       $topicsql = "SELECT tid,topic FROM {$_TABLES['topics']}" . COM=getPermSQL('WHERE',0,3);

ハック3.会員登録時に自動的に「Story Admin」を付加する

1.6まではハックが必要でしたが、1.7以降は、標準機能に組み込まれました。グループ管理画面で初期登録に設定するだけです。

個人用ツール