Hide A Particular Admin Account From Wordpress User List Hide A Particular Admin Account From Wordpress User List wordpress wordpress

Hide A Particular Admin Account From Wordpress User List


You can do this with a custom function in your functions.php.Here is an example :

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);  }}

Or you can use a plugin for this; http://wordpress.org/plugins/user-role-editor/


Combining the answer of "angezanetti", the question of "Natalia" and the response of "user3474007" to Natalia, this code will hide the user from all other users (including admins).

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 != 'hiddenuser') {     global $wpdb;    $user_search->query_where = str_replace('WHERE 1=1',      "WHERE 1=1 AND {$wpdb->users}.user_login != 'hiddenuser'",$user_search->query_where);  }}


There is a very good solution by angezanetti, but even when hiddenuser is hidden from Administrators list, the total number of admins shown is still unchanged and it can be suspicious for someone.I took the code by Symbolwdd and added lines for correct displayed number of admins:

add_action('pre_user_query','dt_pre_user_query');function dt_pre_user_query($user_search) {   global $current_user;   $username = $current_user->user_login;   if ($username != 'hiddenuser') {      global $wpdb;      $user_search->query_where = str_replace('WHERE 1=1',         "WHERE 1=1 AND {$wpdb->users}.user_login != 'hiddenuser'",$user_search->query_where);   }}add_filter("views_users", "dt_list_table_views");function dt_list_table_views($views){   $users = count_users();   $admins_num = $users['avail_roles']['administrator'] - 1;   $all_num = $users['total_users'] - 1;   $class_adm = ( strpos($views['administrator'], 'current') === false ) ? "" : "current";   $class_all = ( strpos($views['all'], 'current') === false ) ? "" : "current";   $views['administrator'] = '<a href="users.php?role=administrator" class="' . $class_adm . '">' . translate_user_role('Administrator') . ' <span class="count">(' . $admins_num . ')</span></a>';   $views['all'] = '<a href="users.php" class="' . $class_all . '">' . __('All') . ' <span class="count">(' . $all_num . ')</span></a>';   return $views;}