Role Managerの設定ミスだと思います。
既存の権限の編集をしないで、新規に権限を作成して適宜権限を追加していったほうがいいと思いますよ。ユーザレベルなど厳密に設定しないとおかしなことになります。
ありがとうございます。
つまり新しい権限を作ってあげて、当てはめればよいんですね。
さきほど試して、directorという役割グループをつくりしまして、
全ユーザーのユーザー情報編集・削除はできますが、
管理者のユーザー情報編集・削除ができるようです・・・
管理者のユーザー情報編集・削除ができなくするにはどういたしましょうか?
きちんと設定されていれば「ユーザー」欄には「あなたのプロフィール」しか表示されないはずです。
役割グループで作成したユーザー(unboboさんの例で言うとdirector)のユーザーレベルを3などの低いレベルに設定し、Create Users、Delete Users、Edit Usersなどのユーザーを設定できる権限はすべて非許可にしてください。
追記:私の使用しているバージョンはRole Manager 2.2.3 です。
ありがとうございます。
試してみましたが、思っていたものとは違いました。
・メニューの「ユーザー」欄には、「投稿者とユーザー」と「あなたのプロフィール」があること
・「ユーザーの管理」では、一覧があり、「管理者」以外のユーザー名はクリックできること
・「ユーザーの管理」では、新規ユーザーの追加ができること
・「ユーザーの管理」では、「管理者」以外のユーザーを編集・削除できること
が、必要条件です。
現状のRoleManagerでは、役割グループで作成したユーザーのユーザーレベルを3などの低いレベルに設定して、Create Users、Delete Users、Edit Users(これは必須です)を設定しても、「管理者」まで削除できる設定になっております。
なぜこのようなややこしい設定が必要があるかと言いますと・・・たとえば班活動を想定して。
・班長は管理者で、全ての権限を持つ。(RoleManagerでは可能)
・副班長は、チームリーダーの編集・削除以外は全ての権限を持つ。
(メンバーの追加・編集・削除ができる。ただしチームリーダーの編集・削除はできない)
・メンバーは自分の分だけ投稿・編集・削除ができる(RoleManagerでは可能)
副班長が意図的に班長の情報を削除したり、パスワード編集できたりして、
場合によっては班長を追い出すこともできるので、そのようなことも避けたいのです。
会社で言うとシステム管理者(管理者)と、別部署の上司(編集者)と部下(作成者)ですね。
さすがに別部署の上司はシステム管理者の情報が消せるのはどうかと思いますしね。
このような条件の中でですが、よろしくお願いします。
私も似た案件を研究中です。
解決には至らないのですが、2.8からだと、get_editable_roles というフィルターフックが追加されるようですね。これでプラグインを作るとソースをいじらなくて済みそうです。
2.7.1で確認したところ、やはり上記フックがありませんでした。ソースなら/wp-admin/user.phpをはじめ、数カ所の変更が必要そうですね。