Blenden Sie Benutzer mit einer bestimmten Rolle aus der Benutzerliste im WordPress-Administrations-Dashboard aus
Lesezeit: 2 Minuten
Rakhi Prajapati
Ich habe zwei Rollen namens Agent und Subagent. Ich möchte diese beiden spezifischen Rollen aus der Admin-Benutzerliste ausblenden.
Ich habe versucht, die zu verwenden pre_user_query Filter, konnte es aber nicht zum Laufen bringen.
Könnte jemand bitte einen richtigen Weg vorschlagen, es zu tun?
Vielen Dank,
Vielleicht kannst du dir daraus eine Vorstellung machen. stackoverflow.com/questions/20922108/…
– Nirmohi
3. August 2018 um 8:09 Uhr
^^ schalten Sie einfach die Rolle anstelle des Benutzernamens um.
– Ständer
3. August 2018 um 8:11 Uhr
Ich muss dasselbe tun, als gäbe es 5 Benutzer mit der Rolle „Agent“. Also möchte ich diese Benutzer aus der Benutzerliste ausblenden.
– Rakhi Prajapati
3. August 2018 um 8:12 Uhr
@nir dies dient zum Ausblenden des Administrators, wenn der Administrator angemeldet ist. Ich möchte Benutzer mit der Rolle „Agent“ und „Subagent“ aus der Benutzerliste ausblenden.
– Rakhi Prajapati
3. August 2018 um 8:14 Uhr
kubi
Einfacher & sicherer:
add_filter('pre_get_users', function ($user_query) {
// use the sluglike role names, not their "display_name"s
$user_query->set('role__not_in', ['agent', 'subagent']);
});
add_action('pre_user_query','hide_all_agents_subagents');
function hide_all_agents_subagents( $u_query ) {
$current_user = wp_get_current_user();
if ( $current_user->roles[0] != 'administrator' ) {
global $wpdb;
$u_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 '%agent%' AND {$wpdb->usermeta}.meta_value NOT LIKE '%subagent%')",
$u_query->query_where
);
}
}
Vielen Dank das ist was ich gesucht habe. 🙂
– Arman H
30. April 2020 um 8:47 Uhr
Hallo @armanH, hoffe es hat dir geholfen. Vergessen Sie nicht, die Antwort zu positiv zu bewerten. Vielen Dank.
– Rakhi Prajapati
20. August 2021 um 6:28 Uhr
13110500cookie-checkBlenden Sie Benutzer mit einer bestimmten Rolle aus der Benutzerliste im WordPress-Administrations-Dashboard ausyes
Vielleicht kannst du dir daraus eine Vorstellung machen. stackoverflow.com/questions/20922108/…
– Nirmohi
3. August 2018 um 8:09 Uhr
^^ schalten Sie einfach die Rolle anstelle des Benutzernamens um.
– Ständer
3. August 2018 um 8:11 Uhr
Ich muss dasselbe tun, als gäbe es 5 Benutzer mit der Rolle „Agent“. Also möchte ich diese Benutzer aus der Benutzerliste ausblenden.
– Rakhi Prajapati
3. August 2018 um 8:12 Uhr
@nir dies dient zum Ausblenden des Administrators, wenn der Administrator angemeldet ist. Ich möchte Benutzer mit der Rolle „Agent“ und „Subagent“ aus der Benutzerliste ausblenden.
– Rakhi Prajapati
3. August 2018 um 8:14 Uhr