it-swarm.com.de

Wie entferne ich "Super Admin" von allen Benutzern, die kein "Super Admin" sind?

Ich möchte den Filter oben entfernen, in dem "Super Admin" für Benutzer steht, die kein "Super Admin" sind. Wie mache ich das?

Dieser Screenshot zeigt, wovon ich spreche: enter image description here

2
Matt

Diese Liste der Filter am oberen Rand der Admin-Bildschirme heißt Views . Sie können Ansichten mit dem Filter views_{$this->screen->id} verwalten. Wo Sie {$this->screen->id} durch den Namen des Bildschirms ersetzen möchten, den Sie verwalten möchten.

Um den Bildschirm Users zu filtern, können Sie Folgendes versuchen:

// filter the 'users' views
add_filter( "views_users", "wse57231_filter_user_views");

function wse57231_filter_user_views($views){
  // This assumes the key for the role is 'super_admin'
  // Is the current user not a "super_admin"?

  if( !current_user_can('super_admin')){
    // Remove the super_admin view from the list of views
    unset($views['super_admin']);
  }

  return $views;
}

Referenzen: * https://developer.wordpress.org/reference/hooks/views_this-screen-id/ * http://codex.wordpress.org/Function_Reference/current_user_can

Hinweis: Basierend auf den Kommentaren klingt es so, als ob Super Admin eine benutzerdefinierte Rolle ist, die Sie erstellt haben. Dies ist teilweise verwirrend, da Super Admin bei der Verwendung von WordPress Multisite auch der Name einer besonderen Rolle ist.

1
sxalexander