「Role Scoper」でカテゴリ単位で管理権限を設定する方法

<要件>

  1. 登録ユーザーをグループ分けして、それぞれに投稿できるカテゴリと投稿できないカテゴリを設定する。<例>本社、○○支店、△△支店….とか。mac記事、windows記事….とか。
  2. 各ユーザーの新規投稿画面には、投稿できないカテゴリを表示しない。

<前提>

  1. 登録ユーザーは「寄稿者」の管理権限を付与(うちのシステムではね。必ず寄稿者である必要はない)
  2. 新規登録時、必ず権限グループを選択する。

<前準備>

すでに色々設定しまった場合は、まずデフォルトに戻しましょう。
ただし、デフォルトに戻した後でも、僕の場合カテゴリー設定などはそのまま設定が残ってしまっていたので、地道に「remove」などを繰り返して設定を消していきました。

<投稿以外を対象外にする> ※追記分
まずは権限設定の概念(というか考え方)だが、このプラグインの場合、一旦すべての投稿にロックをかける。
そして、その後の設定で一つずつロックを解除していくという手法をとる。
なので、この段階では、一度すべての投稿にロックをかける。

  1. 「Role」→「General」のページを開く
  2. 「1. Select Assignment Mode」の項目を「Assign」にする。
  3. 「2. Select Users or Groups to Modify」で「WP Contributor」をチェック
  4. 「Modify role assignments for 固定ページ」で「Page Associate」にチェック
  5. 「Modify role assignments for Nav Menu Manager」で「Nav Menu Manager」にチェック
  6. 「Modify role assignments for Groups」で「Group Applicant」にチェック
  7. ページ右上にある「update」をクリック

これで、投稿・固定ページなど、すべてにロックがかかったと思う。
ためしに「寄稿者」権限のユーザーでログインして、新規投稿ページを開いてみる。
もしカテゴリー枠に何も表示されていなければ、ロックがかかっていることになる。

では、次にユーザーを「グループ」に振り分ける。
つまり、A、B、Cというユーザーがいて、AとBは天才グループ、Cを秀才グループに分類する。
そして、天才カテゴリーにはAとBしか書き込めないようにする。秀才グループはCのみ書き込み可能とする。

<権限グループの設定方法>

  1. サイドメニュー→「ユーザー」→「Role Groups」を選択。
  2. 「Create New Group」フォームで、グループ名を入力。日本語も使用できた。必要があれば説明文も入力する。
  3. フォームの右側にある「create」をクリックすれば、権限グループが追加される。

<権限グループの付与方法>

  1. サイドメニュー→「ユーザー」→「ユーザー一覧」→該当ユーザーのプロフィールを選択
  2. User GroupsフォームでSearch for Groupから該当グループを探す。グループが少ない場合は、そのまま「Search」ボタンを押せば、登録済みのグループがリストアップされる。
  3. 該当するグループを選択して「Add>」ボタンを押す。

以上。

では、最後に「書き込みをOKするカテゴリーを開放する」設定を行う。

<設定方法>

  1. サイドメニュー→「Roles」→「カテゴリー」を選択。
  2. 「1. Select Assignment Mode」で「Assign for selected and sub-category」を選択。これで、選択したカテゴリーとその下位階層に設定が適用されます。
  3. 「2. Select Uesr or Groups To Modify」で対象グループもしくはユーザーを選択します。
  4. 「4. select Roles To Assign/Remove」で、投稿を許可するカテゴリの「Post Auther」を選択する。別にAutherでなくてもよいが、権限が低いと記事を公開できなくなる場合もあるらしい。
  5. ページ上部右端の「update」を選択する。しかし、なんで上にしか「update」がないんだ。カテゴリ多いと面倒くさいぞ。

終わり。画像なくてすみません。

【Contact Form 7】確認用メールアドレスとメールチェック

参考サイト:Contact Form 7で確認用メールアドレスの入力フォームを加える方法(こぶたのラッパ)

(1)テンプレートのfunction.phpに下記を追加

<?php
add_filter( 'wpcf7_validate_email', 'wpcf7_text_validation_filter_extend', 11, 2 );
add_filter( 'wpcf7_validate_email*', 'wpcf7_text_validation_filter_extend', 11, 2 );
function wpcf7_text_validation_filter_extend( $result, $tag ) {
$type = $tag['type'];
$name = $tag['name'];
$_POST[$name] = trim( strtr( (string) $_POST[$name], "n", " " ) );
if ( 'email' == $type || 'email*' == $type ) {
if (preg_match('/(.*)_confirm$/', $name, $matches)){
$target_name = $matches[1];
if ($_POST[$name] != $_POST[$target_name]) {
$result['valid'] = false;
$result['reason'][$name] = '確認用のメールアドレスが一致していません';
}
}
}
return $result;
}
?>

(2)contactform7の設定画面に、下記フォームを追加

<p>メールアドレス<br />
[email* your-email] </p>

<p>メールアドレス (確認用)<br />
[email* your-email_confirm] </p>

以上。今からテストする。

考えない!

もうこれに尽きる。
今の僕のお題。
思考というよりは空想とか妄想の類がメインだけど。きっと思考そのものもセーブしたほうがいい。

瞑想覚えよう。

善悪の彼岸

ニーチェの本だっけ?
この記事は読んだとき、ふとタイトルが浮かんだ。

18歳の母、緊急通報ダイヤルに「強盗を撃ってもいい?」と相談(CNN)

(以降転載)

米オクラホマ州で生後3カ月の息子と2人暮らしの女性(18)が、緊急通報ダイヤルで助言を求めながら、自宅に押し入ってきた男を射殺する事件があった。
同州ブランチャードに住むサラ・マッキンリーさん(18)は12月31日午後、緊急通報ダイヤルの911に電話して助けを求めた。「手元に銃が2丁あるの。男が入ってきたら撃ってもいい?」
警察などの調べによると、この日2人の男が強盗目的でマッキンリーさんの自宅に押し入ることを計画。1人がドアを激しくたたき、体をぶつけて壊そうとした ため、マッキンリーさんはドアの前にソファを置いて子どもを守ろうとしていた。夫は25日にがんでなくなったばかりだった。
911の通報に応答したオペレーター、ダイアン・グラハムさんは、マッキンリーさんに「あなた自身を守るためにできることは何でもしなさい」「許可するとは言えないいけれど、あなたの赤ちゃんを守るためにやるべきことをやりなさい」と語りかけた。
この助言を受けてマッキンリーさんは、ドアを壊して入ってきた男に向け、散弾銃の引き金を引いた。
駆け付けた警察は、左手に刃物を握った状態でドアとソファの間に倒れていた容疑者を発見。現場から逃走した共犯者を殺人の疑いで逮捕した。
検察はマッキンリーさんの行為を正当防衛とみなし、訴追はしない方針。911のオペレーターの助言についても「同じ意見だ」と話している。
4日にテレビ番組に出演したマッキンリーさんは、男を撃ったことを後悔しているかと尋ねられてきっぱり否定。「もしもああしていなければ、状況は全く違うものになっていた」と振り返った。

(以上。2012.01.06 from CNN)

この事件を知る前は、アメリカの銃好きを時代遅れに感じていたけど、こういう事件が実際に起こると、正直手元に武器を持っててホッとした。
母親曰く「「もしもああしていなければ、状況は全く違うものになっていた」
まさにその通りだ。

中には「警察に任せろ」という人もいるかもしれないが、今回の場合は間に合わなかっただろう。そして、母親が非武装だった場合の末路を考えると、とても「銃が悪い」とはいえない。
この事件は典型的な正当防衛、つまり自衛だ。奇麗事ではなく現実問題なのだ。

しかし、自衛のためのはいえ、人を殺せば記憶に残る。
母親が自ら引き寄せた不運ではないが、彼女が人を殺めたという事実に苦しんでいないことを祈るばかりだ。
人を殺したのではなく、子どもを守っただけなのだ。

一方では銃を乱射する人間がいれば、他方ではこうやって銃で人の人生を救うことができる。
素粒子物理学でも仏教でも「二面性」が重要なファクターになっているが、その二面性を無視して論じると、一つだけ違うピースが入り込んだジグソーパズルをするようなもので、正しい結論にはならないし、第一時間の無駄だ。
今回のような銃が絡む出来事についても、銃が問題のようにみえて、実は銃ではなく人間にこそ問題がある(まぁ改めて言われるまでもないほど明確ではあるが)。
銃乱射事件の被害者と、今回の件で子を守った母親と、等しく社会に求めるものはなんだろう。
それは、人間のレベルアップ以外にはない。

今日買った本

考えない練習」小池龍之介 ー 小学館

僕の精神状態を英語で言うと”too many mind”ということだろうか。
とにかく思考が暴走する。
思考をコントロールできれば、今より楽に生きられるかな~と思ったもんで購入決定。

読書感想はまたいずれ。