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).
Spodobał Ci się artykuł? Zapisz się do naszego Newslettera - ZERO SPAMu, same konkrety, oraz dostęp do dodatkowych materiałów przeznaczonych dla subskrybentów!
Na podany adres e-mail otrzymasz od nas wiadomość e-mail, w której znajdziesz link do potwierdzenia subskrypcji naszego Newslettera. Dzięki temu mamy pewność, że nikt nie dodał Twojego adresu przez przypadek. Jeśli wiadomość nie przyjdzie w ciągu najbliższej godziny (zazwyczaj jest to maksymalnie kilka minut) sprawdź folder SPAM.Patryk
Pasjonat nowych technologii - od sprzętu po oprogramowanie, od serwerów po smartfony i rozwiązania IoT. Potencjalnie kiepski bloger, bo nie robi zdjęć "talerza" zanim zacznie jeść.
Dumny przyjaciel swoich psów :-)
Ostatnie artykuły: Patryk (zobacz wszystkie)
- Motywy i wtyczki do WordPressa w Envato Elements (nadal) bez automatycznej i/lub wygodnej aktualizacji - 1970-01-01
- Dodawanie ikon do strony internetowej (np. do menu) na przykładzie Font Awesome 5 (i Dashicons) i WordPressa - 1970-01-01
- Password Checkup do Chrome od Google, by na bieżąco weryfikować, czy nasze dane logowania nie wyciekły - 1970-01-01
W tej formie możesz również zadać dodatkowe pytania dotyczące wpisu, na które – w miarę możliwości – spróbujemy Ci odpowiedzieć.
Podziel się