Rendre la barre d’administration visible uniquement pour les admins
Par défaut, la barre d’administration de WordPress est proposée à tous les membres. Découvrez la méthode à suivre pour rendre visible la barre d’administration uniquement aux administrateurs de votre site.
Introduite dans WordPress 3.3, la barre d’administration est une nouvelle version de la très controversée “Toolbar” qui avait été implantée dans WordPress 3.0.
Si vous pensez que cette fonctionnalité est seulement utile pour les administrateurs de votre site, cette astuce va vous permettre de restreindre la visibilité de la barre d’administration aux administrateurs de votre site.
Copier le code ci-dessous dans le fichier functions.php
présent à la racine de votre thème :
[pastacode lang=”php” message=”” highlight=”” provider=”manual”]
if (!current_user_can('manage_options')) {
remove_action( 'admin_footer', 'wp_admin_bar_render', 1000 );
remove_action('wp_footer', 'wp_admin_bar_render', 1000);
function remove_admin_bar_style() {
echo '<style>body.admin-bar #wpcontent, body.admin-bar #adminmenu { padding-top: 0px !important; }</style>';
}
add_filter('admin_head','remove_admin_bar_style');
function remove_admin_bar_style_frontend() {
echo '<style>html{ padding-top: 0px !important; }</style>';
}
add_filter('wp_head','remove_admin_bar_style_frontend');
}
[/pastacode]
13 Commentaires
Je me demande pourquoi nous n’avons pas la possibilité de choisir l’affichage de cette barre en standard dans le BO WordPress. En effet, lorsque l’on fait un site e-commerce (avec Jigoshop par exemple), lorsque l’internaute devient client, il possède de ce fait un compte et peut potentiellement accéder au backoffice via la barre, bof…
Merci je vais mettre en œuvre ton code très rapidement :)
@DUPRÉ DAVID : En effet, je suis d’accord avec toi. C’est une option qui devrait être proposer dans les réglages.
En espérant que cela soit possible nativement dans une prochaine version de WordPress.
la profile.php “pour abonne” est toujours accessible aussi via le lien dans les commentaire (Connecté(e) en tant que …)
très pratique à l’usage…
Merci
bonsoir, je ne comprends pas ça ne l’enlève pas a mes abonnés et en plus ces mêmes abonnés ont accès à mes fichier multimédias. quelqu’un a déjà eus le même souci??
merci
@MARCELUS : Je viens de re-tester le code et ça fonctionne !
L’avez-vous bien ajouté dans le fichier functions.php présent à la racine de votre thème ?.
oui oui j’utilise souvent ce fichier functions.php, c’est vraiment bizarre j’ai désactivé buddypress et les autres extensiosn rien y fait
ce code marche par contre
@MARCELUS : En fait, l’astuce était dédié uniquement à la désactivation de l’admin bar du côté administration.
J’avoue que j’aurai dû le préciser. Du coup, j’ai mis à jour le code pour pouvoir aussi supprimer l’admin bar du côté front-office.
Cela évitera toute confusion :)
a ok impec. par contre savez vous comment retirer l’acces aux medias de mes abonnés??
merci
Bonjour et merci pour cette astuce. Elle a fonctionné mais j’ai quand même eu une petite frayeur.
En mettant à jour mon functions.php une page blanche est apparue.
Heureusement après un refresh aucun bug n’est à déclarer.
Cordialement
Bon et bien à priori ce bug n’est pas anodin puisque je retrouve cette page blanche à chaque fois que je créé un article ou le modifie, dès qu’un commentaire est posté, etc.
J’ai fait ta manip’ sur deux sites utilisant le même thème et les mêmes widgets sauf qu’un seul des deux me renvoie cette erreur…
Une idée d’où cela peut venir ?
Cordialement
Pour le front il existe une fonction simple : show_admin_bar(false);