web-dev-qa-db-fra.com

Comment masquer une option de rôle d'utilisateur spécifique dans une liste de rôles d'utilisateur?

Je dois masquer le rôle d'utilisateur Administrateur dans la zone "Rôles d'utilisateur" pour ces pages:

  • /wp-admin/users.php
  • /wp-admin/user-new.php
  • /wp-admin/user-edit.php

 New user 

J'aimerais masquer cette option de rôle aux autres utilisateurs ayant la possibilité de sélectionner le rôle d'administrateur afin d'empêcher quiconque d'autre de donner des droits d'administrateur.

2
twelvell

SOLUTION:

// Remove Administrator role from roles list
add_action( 'editable_roles' , 'hide_adminstrator_editable_roles' );
function hide_adminstrator_editable_roles( $roles ){
    if ( isset( $roles['administrator'] ) && !current_user_can('level_10') ){
        unset( $roles['administrator'] );
    }
    return $roles;
}
3
twelvell