1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php add_action( 'pre_user_query','hide_admin_users_from_non_admin' ); function hide_admin_users_from_non_admin( $user_query ) { global $current_user; if ( ! user_can( $current_user, 'administrator' ) ) { global $wpdb; $user_query->query_where = str_replace( 'WHERE 1=1', "WHERE 1=1 AND {$wpdb->users}.ID IN ( SELECT {$wpdb->usermeta}.user_id FROM $wpdb->usermeta WHERE {$wpdb->usermeta}.meta_key = '{$wpdb->prefix}capabilities' AND {$wpdb->usermeta}.meta_value NOT LIKE '%administrator%' )", $user_query->query_where ); } } ?> |