Nous savons que is_admin()
vérifie si l’URL actuelle appartient à DASHBOARD ( MAIS elle vérifie si l’utilisateur est ADMIN ).
Donc, j'utilise cette fonction pour détecter si l'administrateur est connecté à wordpress:
function is_admin_user(){
require_once(ABSPATH.'wp-includes/pluggable.php'); return current_user_can('create_users'); //or 'manage_options'
}
cependant, ce n'est pas la solution idéale. Existe-t-il une fonction intégrée, telle que wp_is_administrator()
?
current_user_can
acceptera un nom de rôle mais, malheureusement, le comportement avec les rôles n’est pas tout à fait cohérent .
Ce qui suit devrait fonctionner et est un peu plus simple que ce que vous avez.
$current_user = wp_get_current_user();
if (user_can( $current_user, 'administrator' )) {
// user is an admin
}
Il semble que le moyen le plus simple serait en fait d'utiliser current_user_can en tant que tel:
if( current_user_can( 'administrator' ) ){} // only if administrator
Cela semble être un dupliquer .