Zapytał się mnie dziś kolega, jak najprościej – czyli bez instalowania dodatkowych wtyczek – wyłączyć pasek administracyjny w WordPressie „od strony użytkownika” (frontend). Nie wiem po co mu to, nie wnikam, ale skoro zapytał, to pewnie jest w tym jakiś sens… ;-)
Admin bar w WordPressie
Sam raczej tego nie stosuje, przynajmniej na stałe – czasem, gdy np. testuje różne rozwiązania typu BugMeBar zdarza mi się „na chwilę” wyłączyć pasek administracyjny w WordPressie (to ta pozioma belka na samej górze, co towarzyszy zalogowanym użytkownikom), bo faktycznie zdarza się, że coś tam się… gryzie. Zwłaszcza, że ogólnie uważam ten pasek za bardzo przydatny w codziennej pracy.
Ale jak ktoś potrzebuje go wyłączyć, to wystarczy dodać jedną linijkę do pliku functions.php:
add_filter( 'show_admin_bar', '__return_false' );
Wyłączy ona globalnie, czyli dla wszystkich użytkowników górny pasek administracyjny. Ale co ważne, w WP-Admin będzie on dalej widoczny.
Możemy też ten kod trochę rozbudować, tak by wyłączyć go tylko tym użytkownikom, którzy np. nie mogą zmieniać ustawień w WordPressie:
if ( !current_user_can( 'manage_options' ) ) {
show_admin_bar( false );
}
Ew. trochę bardziej „pro”, czyli z wykorzystanie „add_action” (jakby się trafił jakiś purysta ;-)):
function webinsider_disable_admin_bar_frontend() {
if ( ! current_user_can( 'manage_options' ) ) {
show_admin_bar( false );
}
}
add_action( 'init', 'webinsider_disable_admin_bar_frontend' );
Idąc dalej, możemy wyłączyć pasek administracyjny dla wszystkich użytkowników poza „patryk”:
function webinsider_disable_admin_bar_frontend() {
$current_user = wp_get_current_user();
if ( $current_user->user_login !== 'patryk' ) {
show_admin_bar( false );
}
}
add_action( 'init', 'webinsider_disable_admin_bar_frontend' );
Czy też dla wszystkich, poza użytkownikiem o konkretnym ID (w końcu nazwę można zmienić… tak samo zresztą ID):
function webinsider_disable_admin_bar_frontend() {
$current_user = wp_get_current_user();
if ( $current_user->ID != '123' ) {
show_admin_bar( false );
}
}
add_action( 'init', 'webinsider_disable_admin_bar_frontend' );
I to chyba tyle. Oczywiście powyższe reguły można właściwie dowolnie rozbudowywać, zależnie od potrzeb (w końcu elastyczność, to jedna z wielu zalet WordPressa).

- Wyrównywanie wyglądu zdjęć w widoku archiwum produktów w WooCommerce na przykładzie CSSa i object-fit - 1970-01-01
- Aktywacja kosza dla biblioteki mediów w WordPressie – wystarczy mała modyfikacja w pliku wp-config.php - 1970-01-01
- Weryfikacja błędnych linków WWW w Systemie Partnerskim Bankier.pl – to powinien być rynkowy standard - 1970-01-01