Alcuni lettori ci hanno chiesto come disabilitare la barra di amministrazione di WordPress. Anche se si tratta di una piccola modifica, alcuni utenti preferiscono farlo per vari motivi, come ad esempio mantenere un’interfaccia utente più pulita o migliorare l’esperienza d’uso per gli utenti non amministratori.
Per default, è possibile disabilitare facilmente la barra di amministrazione di WordPress per i singoli utenti. Tuttavia, questa operazione può richiedere molto tempo se sul vostro sito c’è un gran numero di utenti registrati.
In questo articolo vi mostreremo come disabilitare facilmente la barra di amministrazione di WordPress per tutti gli utenti tranne che per gli amministratori.
Che cos’è la barra di amministrazione di WordPress?
Per impostazione predefinita, WordPress mostra una barra di amministrazione nella parte superiore dello schermo per tutti gli utenti connessi. Quando si accede al proprio account, è possibile vedere questa barra nell’area di amministrazione di WordPress e in tutte le altre pagine.
La barra degli strumenti dell’amministrazione di WordPress contiene utili scorciatoie per accedere a diverse aree del backend di WordPress, che cambiano in base al ruolo e alle autorizzazioni dell’utente in WordPress.
Tuttavia, la barra di amministrazione può essere fonte di distrazione quando si guarda la parte frontale del sito.
Può anche influire sul design e sull’esperienza utente del vostro sito web. Questo può essere un problema se state costruendo o gestendo un sito WordPress per conto di terzi, in quanto impedisce loro di vedere l’aspetto reale del loro sito.
Fortunatamente, esistono diversi modi per disabilitare la barra di amministrazione per tutti gli utenti tranne che per gli amministratori. Basta usare i collegamenti rapidi qui sotto per passare al metodo che si desidera utilizzare:
Video tutorial
Se preferite le istruzioni scritte, continuate a leggere.
Metodo 1: Modificare le autorizzazioni di ciascun utente in WordPress
È possibile disattivare la barra di amministrazione per utenti specifici, semplicemente modificando il loro profilo utente. Si tratta di un metodo semplice e veloce se avete bisogno di rimuovere la barra per un numero limitato di persone. Tuttavia, se si gestisce un sito associativo con molti utenti, si consiglia di scegliere un metodo diverso.
Per rimuovere manualmente la barra di amministrazione, basta andare alla pagina Utenti ” Tutti gli utenti nella dashboard di WordPress. Passare quindi del mouse sull’utente WordPress che non ha bisogno della barra di amministrazione e fare clic su “Modifica” quando appare.
In questo modo si aprirà il profilo dell’utente.
Da qui, deselezionare la casella accanto all’opzione “Mostra la barra degli strumenti durante la visualizzazione del sito”.
Quindi, scorrere fino alla parte inferiore della schermata e fare clic su “Aggiorna utente” per salvare le modifiche. In questo modo si disabilita la barra di amministrazione solo per quella persona specifica.
Per nascondere la barra degli strumenti a più utenti, basta seguire la stessa procedura descritta sopra.
Metodo 2: Utilizzare un codice per disabilitare la barra di amministrazione per gli utenti non amministratori (consigliato)
Se è necessario nascondere la barra di amministrazione per molte persone diverse, modificare manualmente le impostazioni di ciascun utente richiederebbe molto tempo e fatica.
Per questo motivo, si consiglia di disabilitare la barra di amministrazione aggiungendo un codice al file functions.php, che è un file del tema di WordPress.
Alcune guide vi diranno di modificare manualmente i file del tema, ma questo può causare errori comuni di WordPress e può anche rompere completamente il vostro sito web.
Per questo motivo, vi consigliamo di utilizzare WPCode. È il miglior plugin per gli snippet di codice e consente di aggiungere facilmente codice personalizzato in WordPress senza mettere a rischio il sito.
Abbiamo usato WPCode per cambiare lo schema dei colori dell’amministrazione, rimuovere il testo “Ciao Admin”, disabilitare il pulsante delle opzioni della schermata e altro ancora.
Per prima cosa, è necessario installare e attivare il plugin gratuito WPCode. Per ulteriori informazioni, consultare la nostra guida passo-passo su come installare un plugin di WordPress.
Una volta attivato il plugin, andare su Code Snippets ” Add Snippet.
Qui vengono visualizzati tutti gli snippet predefiniti che è possibile aggiungere al sito.
In effetti, WPCode ha l’esatto snippet di codice necessario per disabilitare la barra di amministrazione nella sua libreria di snippet integrata. Basta andare su Snippet di codice “ Libreria.
Qui, cercate “Disabilita la barra di amministrazione di WP”.
Quando viene visualizzato lo snippet giusto, fare clic sul pulsante “Usa snippet”.
Il plugin aggiungerà automaticamente il codice al sito, gli darà un titolo descrittivo, sceglierà il metodo di inserimento corretto e aggiungerà anche dei tag per aiutarvi a identificare lo snippet.
Ecco come si presenta il codice:
/* Disable WordPress Admin Bar for all users */
add_filter( 'show_admin_bar', '__return_false' );
Se l’obiettivo è disabilitare la barra di amministrazione per tutti gli utenti, è sufficiente attivare/disattivare l’interruttore da “Inattivo” ad “Attivo” e cliccare su “Aggiorna”.
Tuttavia, poiché il nostro obiettivo è disabilitare la barra di amministrazione di WordPress per gli utenti non amministratori, dobbiamo apportare alcune piccole modifiche al codice.
È possibile sostituire il codice esistente con il seguente:
/* Disable WordPress Admin Bar for all users except administrators */
add_filter( 'show_admin_bar', 'restrict_admin_bar' );
function restrict_admin_bar( $show ) {
return current_user_can( 'administrator' ) ? true : false;
}
Questo codice identifica gli utenti non amministratori che non stanno guardando la dashboard di amministrazione. Per questi utenti, disattiva la barra di amministrazione di WordPress.
Quindi, scorrere la pagina fino alla sezione ‘Inserimento’. Qui si può mantenere il metodo predefinito ‘Auto Insert’ per assicurarsi che il codice venga eseguito ovunque.
Infine, scorrere fino alla parte superiore dello schermo e fare clic sul cursore “Inattivo” in modo che sia visualizzato “Attivo”.
Quindi, basta fare clic sul pulsante “Salva snippet” o “Aggiorna” per rendere attivo lo snippet di codice.
È tutto! Ricordatevi di controllare il vostro sito WordPress per verificare che tutto funzioni bene.
Metodo 3: utilizzare un plugin gratuito per disabilitare la barra di amministrazione per gli utenti non amministratori
Se non si desidera aggiungere codice al sito web, è possibile nascondere la barra di amministrazione utilizzando un plugin. Hide Admin Bar Based on User Roles (Nascondi la barra di amministrazione in base ai ruoli dell’utente ) consente di rimuovere la barra in base ai diversi ruoli dell’utente, quindi è una buona scelta se si desidera disabilitare la barra per tutti i membri, i clienti di WooCommerce o altri ruoli dell’utente.
Innanzitutto, è necessario installare e attivare il plugin Hide Admin Bar Based on User Roles. Per maggiori dettagli, consultate la nostra guida passo-passo su come installare un plugin di WordPress.
Dopo l’attivazione, è necessario andare alla pagina Impostazioni ” Impostazioni della barra di amministrazione nascosta. Da qui, selezionare le caselle accanto ai ruoli utente per i quali si desidera disabilitare la barra di amministrazione.
A questo punto, è sufficiente fare clic su “Salva modifiche” per memorizzare le impostazioni.
Speriamo che questo articolo vi abbia aiutato a capire come disabilitare la barra di amministrazione di WordPress per tutti gli utenti tranne gli amministratori. Potreste anche consultare la nostra guida su come ricevere notifiche email per le modifiche ai post in WordPress e la nostra scelta dei migliori plugin per il monitoraggio e il registro delle attività di WordPress.
Se questo articolo vi è piaciuto, iscrivetevi al nostro canale YouTube per le esercitazioni video su WordPress. Potete trovarci anche su Twitter e Facebook.
Destiny Boy
This was very simple ans straight forward, it helped me
ronald osoo
This code has bug , its working but not bullet proof . The normal user can by -pass this and get access to the user admin like panel at the top by just adding wp-admin/ to the url like trying to login
Math
I agree, direct access to wp-admin/profile.php is making this useless.
Steve
A lot of websites not only from wordpress have the same option. You can acces to the admin-login page of any website just writing example.com/admin : Thats normal. I find it’s look really good without the adminbar.
Alex S
Hello,
I wish your syntax highlighter was better. Tried to copy the code and got the numbers starting at 2. I don’t need your numbers, just the good code. I would use this site a lot more if this was not the case.
Thanks.
WPBeginner Support
You can also click on the little button on top right corner of the code snippet. It will open the raw code in a popup, which is much easier to copy.
Admin
stefano
It works well, but the bar remains for visitors, who have not made the LOGIN
Jenn
This plugin was working great and I was using Theme My Login. When I deactivated that plugin it is not not functioning as before… I see the admin bar for all users. Any suggestions?
Jenn
Sorry I meant to say this ‘code’ was working great. I created a site-specific plugin as well and everything was working great. But after deactivating Theme My Login, not it seems to not have any effect and I see the admin bar on all users.
Suggestions?
Jenn
I just tried adding in the code for all users: show_admin_bar(false); and I can still see the admin bar.
Alexander Pardo
Thank you very much ! A very simple and clean solution.
Jason A. Churchill
I’m not well-read in editing the functions.php file. My first two attempts resulted in syntax error messages.
Where exactly should I place this code in the functions.php file?
WPBeginner Support
At the end. If your functions.php file ends with ?> then you need to paste the code just before it.
Admin
Terry Hale
Thanks so much for this! No plugins, nice, clean, simple.
WPBeginner Staff
WordPress admin bar is displayed only for logged in users.
Bhris
Great straight-to-the-point tutorial.
Is there a version of the code that will block all non-users. That is, visitors to the site won’t see the bar, while all logged-in users would?
Shashi
I was trying to do what what was mentioned in the article and it did not work. I used the following instead which did the trick from me:
if ( ! current_user_can( ‘manage_options’ ) ) {
show_admin_bar( false );
}
The above was mentioned in the wordpress codex: http://codex.wordpress.org/Function_Reference/show_admin_bar
vipin
Thanks a lot its really cool…………
Karen
Neither worked for me. I copied the numbers with the text as I did not know that I could
click on the button on top right corner of the code snippet and copy the raw code. I removed the numbers, but overlooked the seven. I had to change the file entry in via my file manager as I could no longer edit the functions.php. So after a scare and a bit of back and forth I removed the number and the admin bar is still there. I also tried your code Shashi, but it’s not working either.
I have tried every plugin under the sun and nothing will remove the bar.
kim04099
Thank You!!
Che Boielle
Fastest fix to an odd issue I’ve ever found and implemented. Great explanation simple to follow instructions. Thanks guys, will be book marking your site.
Manthan
Thanks, Its the easiest way found..!!!
Ryan McGovern
Thanks for the code snippet!
Anup
Why not simply do this for any specific user.
Jack
It would be hard to do this if you have many users.
Róger Marroni
Great job man!
thank you very much!
Mega
I tried and my site is black.
Ryan S
the first step works fine, it is something in your end, maybe while implementing the code
Etienne
Perfect piece of code… Thanks a lot!
Cheers
Nathan Jansen
Use this if you want this only for a certain role
function remove_admin_bar() {
$user = wp_get_current_user();
if (in_array(‘subscriber’, $user->roles)) {
show_admin_bar(false);
}
}
meef
Godbless You. Answers to my problem always come from you post.
Thanks
Prem
Finally I got the answers Thank you
Paw Pet Directory
I used this on my directory for my customers but the bar will not go away for them. I am using 3.8 with AppThemes Vantage Theme (Latest)
Cory
This is one of those things that, because it’s such a small customization, I’d hate to use a plugin for. So being able to throw this short piece of code into my child theme’s functions.php made me super happy. Thanks so much far sharing! Works like a charm.
Raman
Thanks for posting it was useful.
Naveen
I have added this code it is working fine, but if a user takes meta there is an option yo view the admin, if i click on this the admin page can see, how to avoid this, i dont want to give admin panel to the users, a user can edit the url and give /wp-admin also he can see the admin, i dont want both what will do for this?
Subodh
Admin bar is hidden but now how can a user log out?
I am using bbpress forum and a plugin for users to log in via their Facebook account to join forum. But find no option for logging out.
WPBeginner Support
A link to the logout or login can be provided into sidebar or menus. WordPress comes with a default widget called meta which has login/logout link. Or you can add one to your site’s navigation menus. See our guide on how to show different menus to logged in users
Admin
Loralee
Thanks for the great tutorial. I thought it didn’t work – and then silly me I hadn’t followed the last step to activate my new plugin!! Thanks so much for this! So much better than installing multiple new plugins.
vikas
Thanks mate….u were really helpful…
tc
Rajat
Thx syed it just worked perfectly
Bongo
Thanks for this, it helped me a lot
Andy Wagstaff
I have an area of my site that requires log-in registration.
I have made the admin bar “autohide” by requiring a plug-in, I don’t want to entirely disable it, as I need the abiity to change password, but is there any way of removing items from the bar for users? I don’t want the site name,WP logo or the theme extensions options on the left hand side.
Is this possible? I am sure it is, but I can’t work it out!!
Ta!! Really handy site by the way
Andy
Rajiv
Hi,
I want to disable BP Admin Bar for Logged Out Users.
Please help.
Ken Shoufer
Hello,
Your code worked fine when I tried it locally on my computer, but when I tried it on a fresh Wordpress install on my host server it would not let me log out. When I tried to log out, the address showing was “http://www.ken-shoufer.com/wordpress1/wp-login.php?action=logout&_wpnonce=9e7f51a307”.
I’m not sure what is wrong.
Editorial Staff
That’s weird because we have it running on our live site.
Admin
Adrian
Thanks!
Fabio Santos
You can use this nice plugin instead: http://wordpress.org/plugins/global-admin-bar-hide-or-remove/
Nate
i am trying to disable the W logo on the top left, the “My Sites” menu and the dashboard link on a buddypress multisite install. I want to keep the right side functional which shows the links to their buddypress profile settings. How can I achieve this?
Tanner Moushey
To avoid the blank space where the admin bar was, call the function in the “after_setup_theme” action instead of “init”.
Cristian O. Balan
Really perfect, thanks a lot!
Will
Thank you so much! This worked perfectly and resolved several hours of head-scratching.
Cristian B.
Really nice code. Are here also a fix to the blank bar that many here complains?
David
Hi,
To avoid the blank, just instead of :
add_action(‘init’, ‘remove_admin_bar’);
use:
add_action(‘after_setup_theme’, ‘remove_admin_bar’);
Cristian O. Balan
Thanks a lot man!
niki
Fantastic! Except I also have the blank space visible where the admin bar would be. Does anyone have a fix for this?
Marlita Hill
Hello. Thank you for this. How would I write the code if I only want the bar accessible to admin and contributors? I still do not want the contributors to have admin access to my backend.
Steve
Well… it removes the admin bar but it´s still occupying the space meaning there´s too much space up there now. I´m not sure it´s supposed to be that way?
Adam
worked …
Thanks a lot
Nick Cokas
Add the code and worked perfect. However, the user still sees a white space above were the toolbar existed before. Any ideas to remove that.
Thanks
Toby Couchman
Did you use a plugin to place all the necessary user stuff on the frontend?
My team recently built a site with similar requirements and I’d love to compare the processes.
Cheers
Toby
Mark Coleman
Do not pass a role name to current_user_can(), as this is not guaranteed to work correctly. from
http://codex.wordpress.org/Function_Reference/current_user_can
just FYI
Editorial Staff
Agreed. Just updated the code to make it into a function, and then adding it in via action.
Admin
Sally
Excellent post thanks so much!
Took me under a minute and the bar was gone… forever… truly grateful.
Sally x
Corey Freeman
Thanks to this I have one less plugin bloating my site. Woo!
Delton Childs
This is an awesome post. short, to the point and contained a useful snippet! Thank you so much!
I’m using the S2Member plugin also, I was very concerned about compatibility issues with plugin based solutions because of the various s2Membership Levels. This solutions is working wonderfully for me.
Thanks Again!
James Davis
Hi Guys,
Just found this bit of code and it worked perfect for my site…
Thanks so much
Cheers
James
AKA The Fitness Blogger
glueckpress
Nice. For Superadmins in a Multisite install it would read like if(!current_user_can(‘manage_network’)) //etc.