web-dev-qa-db-ja.com

ある管理者を他の管理者から隠す

ユーザーリストで、ある管理者を他の管理者から隠すにはどうすればよいですか。自分の詳細を表示/編集する権限を彼に与えずに、他の人に管理者権限を与えたいです。

1
Ron
add_action('pre_user_query','yoursite_pre_user_query');
function yoursite_pre_user_query($user_search) {
  global $current_user;
  $username = $current_user->user_login;

  if ($username == '<USERNAME OF OTHER ADMIN>') { 
    global $wpdb;
    $user_search->query_where = str_replace('WHERE 1=1',
      "WHERE 1=1 AND {$wpdb->users}.user_login != '<YOUR USERNAME>'",$user_search->query_where);
  }
}

テキストを関係するユーザーの実際のユーザー名に置き換えます。これを変更して、1人の管理者を他のすべてのユーザー(自分を除く)から隠したり、ユーザーIDや役割に基づいて隠したりすることもできます。 WordPress 3.1以降の場合.

1
k3davis

私のお気に入りの方法は "User Role Editor"プラグインを使うことです - http://wordpress.org/extend/plugins/user-role-editor/

プラグインを使用すると、ユーザロールにさらに機能を追加したり、デフォルトのWordpressロールに基づいて新しいユーザロールを作成したりできます。

たとえば、Wordpressの編集者の役割を実際には使用しない場合は、他の人に編集者の役割を割り当ててから、「ユーザー役割編集者」に移動してすべての管理機能を割り当てることができます。あなたの役割は彼らの役割よりも高いため、編集するユーザーとしてあなたを見ることができます。

編集者の役割も使用する場合は、デフォルトの編集者の役割に基づいて新しい役割を作成し、それに追加の機能を付与しても、役割が自分の役割よりも高いため編集できません。

私にとっては、これはすべてのユーザーロール編集プラグインの中で最も使いやすいものであり、さらに開発者は常に質問や推奨事項に回答しています。

0
Travis Pflanz