Niektórzy czytelnicy pytali nas, jak wyłączyć pasek administratora WordPress. Chociaż jest to niewielka modyfikacja, niektórzy użytkownicy wolą to robić z różnych powodów, takich jak utrzymanie czystszego interfejsu użytkownika lub poprawa komfortu użytkowania dla użytkowników niebędących administratorami.
Domyślnie można łatwo wyłączyć pasek administratora WordPress dla poszczególnych użytkowników. Może to być jednak czasochłonne, jeśli masz dużą liczbę zarejestrowanych użytkowników na twojej witrynie.
W tym artykule pokażemy, jak łatwo wyłączyć pasek administratora WordPress dla wszystkich użytkowników z wyjątkiem administratorów.
Czym jest pasek administratora WordPress?
Domyślnie WordPress wyświetla pasek administratora u góry ekranu dla wszystkich zalogowanych użytkowników. Gdy jesteś zalogowany na swoje konto, możesz zobaczyć ten pasek narzędzi w obszarze administracyjnym WordPress i na wszystkich innych stronach.
Pasek narzędzi administracyjnych WordPress zawiera przydatne skróty do różnych obszarów zaplecza WordPress, a skróty te zmieniają się w zależności od roli i uprawnień użytkownika w WordPress.
Jednak pasek administratora może rozpraszać uwagę, gdy patrzysz na front-end twojej witryny internetowej.
Może to również mieć wpływ na wygląd twojej witryny internetowej i wrażenia użytkownika. Może to stanowić problem, jeśli budujesz lub zarządzasz witryną WordPress dla strony trzeciej, ponieważ uniemożliwia im to zobaczenie, jak naprawdę wygląda ich witryna.
Na szczęście istnieje wiele sposobów na wyłączenie paska administratora dla wszystkich użytkowników z wyjątkiem administratorów. Wystarczy skorzystać z poniższych odnośników, aby przejść do wybranej metody:
Film instruktażowy
Jeśli wolisz pisemne instrukcje, czytaj dalej.
Metoda 1: Zmiana uprawnień każdego użytkownika w WordPress
Możesz wyłączyć pasek administratora dla określonych użytkowników, po prostu edytując ich profil użytkownika. Jest to szybka i łatwa metoda, jeśli chcesz usuwać pasek tylko dla niewielkiej liczby osób. Jeśli jednak prowadzisz witrynę członkowską z dużą liczbą użytkowników, zalecamy wybranie innej metody.
Aby ręcznie usuwać pasek administratora, wystarczy przejść do strony Użytkownicy ” Wszyscy użytkownicy w kokpicie administratora WordPress. Następnie najedź kursorem myszy na użytkownika WordPress, który nie potrzebuje paska administratora i kliknij „Edytuj”, gdy się pojawi.
Spowoduje to otwarcie profilu tego użytkownika.
W tym miejscu należy odznaczyć pole obok opcji „Pokaż pasek narzędzi, gdy zobaczysz witrynę”.
Następnie przewiń ekran do dołu i kliknij przycisk „Aktualizuj użytkownika”, aby zapisać twoje zmiany. Spowoduje to wyłączenie paska administratora tylko dla tej konkretnej osoby.
Aby ukryć pasek narzędzi dla większej liczby użytkowników, wystarczy wykonać tę samą procedurę opisaną powyżej.
Metoda 2: Użyj kodu, aby wyłączyć pasek administratora dla użytkowników niebędących administratorami (zalecane)
Jeśli chcesz ukryć pasek administratora dla wielu różnych osób, ręczna zmiana ustawień każdego użytkownika zajmie dużo czasu i wysiłku.
Z tego powodu zalecamy wyłączenie paska administratora poprzez dodanie kodu do pliku functions.php, który jest plikiem motywu WordPress.
Niektóre przewodniki zalecają ręczną edycję plików motywu, ale może to powodować typowe błędy WordPressa, a nawet całkowicie zepsuć twoją witrynę internetową.
Z tego powodu zalecamy korzystanie z WPCode. Jest to najlepsza wtyczka do fragmentów kodu, która ułatwia dodawanie własnego kodu w WordPressie bez narażania twojej witryny na ryzyko.
Użyliśmy WPCode, aby zmienić schemat kolorów administratora, usuwać tekst „Howdy Admin”, wyłączyć przycisk opcji ekranu i nie tylko.
Najpierw należy zainstalować i włączyć darmową wtyczkę WPCode. Więcej informacji można znaleźć w naszym przewodniku krok po kroku na temat instalacji wtyczki WordPress.
Po włączaniu wtyczki, przejdź do Code Snippets ” Add Snippet.
Tutaj zobaczysz wszystkie gotowe fragmenty kodu, które możesz dodać do swojej witryny.
W rzeczywistości WPCode ma dokładny fragment kodu potrzebny do wyłączenia paska administratora we wbudowanej bibliotece fragmentów kodu. Wystarczy przejść do sekcji Fragmenty kodu „ Biblioteka.
Tutaj należy wyszukać „Disable The WP Admin Bar”.
Gdy pojawi się odpowiedni fragment kodu, wystarczy kliknąć przycisk „Użyj fragmentu kodu”.
Wtyczka automatycznie doda kod do twojej witryny, nada mu opisowy tytuł, wybierze odpowiednią metodę wstawienia, a nawet doda tagi, które pomogą ci zidentyfikować fragment kodu.
Oto jak wygląda kod:
/* Disable WordPress Admin Bar for all users */
add_filter( 'show_admin_bar', '__return_false' );
Teraz, jeśli twoim celem jest wyłączenie paska administratora dla wszystkich użytkowników, wszystko co musisz zrobić, to przełączyć przełącznik z „Nieaktywny” na „Aktywny”, a następnie kliknąć „Aktualizuj”.
Ponieważ jednak naszym celem jest wyłączenie paska administratora WordPress dla użytkowników niebędących administratorami, musimy wprowadzić kilka drobnych modyfikacji w kodzie.
Istniejący kod można zastąpić następującym:
/* 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;
}
Ten kod identyfikuje wszystkich użytkowników niebędących administratorami, którzy nie patrzą na obecny, aktualny kokpit administratora. Dla tych użytkowników wyłącza pasek administratora WordPress.
Następnie przewiń stronę w dół do sekcji „Wstaw”. Tutaj możesz zachować domyślną metodę” Auto wstawić”, aby upewnić się, że kod działa wszędzie.
Na koniec przewiń ekran do góry i kliknij suwak „Nieaktywne”, aby wyświetlić „Aktywne”.
Następnie wystarczy kliknąć przycisk „Zapisz fragment kodu” lub „Aktualizuj”, aby fragment kodu stał się aktywny.
To wszystko! Pamiętaj tylko, aby sprawdzić swoją witrynę internetową WordPress, aby upewnić się, że wszystko działa poprawnie.
Metoda 3: Użyj darmowej wtyczki, aby wyłączyć pasek administratora dla użytkowników niebędących administratorami
Jeśli nie chcesz dodawać kodu do twojej witryny internetowej, możesz ukryć pasek administratora za pomocą wtyczki. Hide Admin Bar Based on User Roles pozwala usuwać pasek administratora na podstawie różnych ról użytkowników, więc jest to dobry wybór, jeśli chcesz wyłączyć pasek dla wszystkich członków, klientów WooCommerce lub innej roli użytkownika.
Najpierw należy zainstalować i włączyć wtyczkę Hide Admin Bar Based on User Roles. Aby uzyskać więcej informacji, zobacz nasz przewodnik krok po kroku, jak zainstalować wtyczkę WordPress.
Po włączaniu należy przejść do strony Ustawienia ” Ukryj pasek administratora. W tym miejscu zaznacz pola obok ról użytkowników, dla których chcesz wyłączyć pasek administratora.
Po wykonaniu tej czynności wystarczy kliknąć przycisk „Zapisz zmiany”, aby zapisać twoje ustawienia.
Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak wyłączyć pasek administratora WordPress dla wszystkich użytkowników z wyjątkiem administratorów. Warto również zapoznać się z naszym przewodnikiem na temat otrzymywania powiadomień e-mail o zmianach w wpisach w WordPressie oraz z naszą ekspercką listą najlepszych wtyczek do logowania i śledzenia aktywności w WordPressie.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Syed Balkhi
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
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.
Administrator
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.
Administrator
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
Administrator
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.
Administrator
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.
Administrator
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.