Usuwanie paska administracyjnego WordPress

Pasek administracyjny WordPress pojawia się na górze witryny za każdym razem, gdy zalogowany użytkownik odwiedza front-end. Dla wielu właścicieli witryn zaburza on układ strony lub daje kontom klientów dostęp do funkcji, których nie potrzebują. Ten przewodnik opisuje cztery metody — przełącznik w ustawieniach, fragment kodu PHP, kod zależny od roli oraz wtyczkę — abyś mógł wybrać odpowiednie rozwiązanie dla swojej sytuacji.

W skrócie: Trzy szybkie opcje: (1) odznacz Pokaż pasek narzędzi podczas przeglądania witryny w Użytkownicy → Twój profil tylko dla własnego konta; (2) dodaj jedną linię do pliku functions.php, aby usunąć pasek dla każdego zalogowanego użytkownika; (3) zainstaluj wtyczkę Auto Hide Admin Bar, aby uzyskać rozwiązanie bez kodu. Wybierz Metodę 3, jeśli chcesz ukryć pasek dla subskrybentów i współautorów, zachowując go dla redaktorów i administratorów.

Dlaczego pojawia się pasek administracyjny WordPress (i kiedy go usunąć)

WordPress domyślnie wyświetla pasek administracyjny na front-endzie dla każdego zalogowanego użytkownika. Steruje nim funkcja show_admin_bar(), która domyślnie zwraca true dla wszystkich ról. Najczęstsze powody, by go usunąć, to:

  • Konflikty układu front-endu — pasek dodaje na górze stałą belkę narzędzi, która może kolidować z niestandardową nawigacją lub nagłówkami motywu.
  • Porządek na kontach klientów — konta subskrybentów i współautorów, które nie potrzebują dostępu administracyjnego, nie powinny widzieć linków administracyjnych na publicznej witrynie.
  • Podgląd bez rozproszeń — projektanci i twórcy motywów często chcą mieć czysty widok podczas przeglądania działających stron.

Która metoda jest dla Ciebie odpowiednia?

Twoja sytuacja Najlepsza metoda
Ukryj pasek tylko dla własnego konta Metoda 1: Przełącznik w ustawieniach
Ukryj pasek dla subskrybentów i współautorów; zachowaj go dla redaktorów i administratorów Metoda 3: Kod PHP zależny od roli
Usuń pasek na stałe dla każdego zalogowanego użytkownika Metoda 2: Fragment kodu w functions.php
Bez pisania kodu Metoda 4: Wtyczka

Metoda 1: Ukryj pasek administracyjny w ustawieniach WordPress (przełącznik dla użytkownika)

Najszybsza opcja — bez kodu, bez wtyczki, bez zmian w całej witrynie. Każdy użytkownik może włączyć lub wyłączyć pasek administracyjny dla swojego konta na stronie profilu.

Zaloguj się do swojego kokpitu WordPress.

Kokpit WordPress

Przejdź do Użytkownicy → Twój profil, przewiń w dół do sekcji Pasek narzędzi, odznacz Pokaż pasek narzędzi podczas przeglądania witryny i kliknij Zaktualizuj profil.

Odznaczenie opcji „Show Toolbar when viewing site”

Po zapisaniu pasek zniknie z front-endu tylko dla tego konta. Pozostanie widoczny w obszarze administracyjnym WordPress — pasek narzędzi w zapleczu przekazuje komunikaty o stanie i powiadomienia o aktualizacjach, które wciąż są przydatne. To ustawienie jest przechowywane jako klucz meta użytkownika show_admin_bar_front w tabeli wp_usermeta i działa w WordPress 6.7 oraz wszystkich wcześniejszych wersjach.

Metoda 2: Usuń pasek administracyjny dla wszystkich użytkowników za pomocą kodu PHP

Aby usunąć pasek administracyjny globalnie — dla każdego zalogowanego użytkownika niezależnie od roli — dodaj pojedynczy filtr do pliku functions.php swojego motywu. Znajdziesz go w wp-content/themes/your-theme/functions.php. Kliknij go prawym przyciskiem myszy w menedżerze plików lub otwórz przez Wygląd → Edytor plików motywu.

Edycja pliku functions.php motywu w celu dodania kodu

Dodaj tę linię do pliku functions.php, aby usunąć pasek administracyjny dla wszystkich użytkowników:

add_filter( 'show_admin_bar', '__return_false' );
Dodaj kod do pliku functions.php, aby wyłączyć górny pasek administracyjny.
Uwaga: Zalecam wprowadzanie zmian w kodzie najpierw na klonie witryny produkcyjnej, zanim ostatecznie wdrożysz je na działającej witrynie, aby zapobiec ewentualnym błędom. Właśnie do tego służy WP Staging.

Kod ten podpina się pod filtr show_admin_bar WordPressa. Zwrócenie false bezwarunkowo wyłącza pasek narzędzi dla wszystkich ról na front-endzie. Usuwa to pasek na publicznej witrynie, ale nie wpływa na pasek administracyjny wewnątrz stron kokpitu wp-admin.

Metoda 3: Ukryj pasek administracyjny dla wybranych ról użytkowników

Najczęstsze pytanie zadawane po zastosowaniu Metody 2 brzmi: „Uruchomiłem fragment kodu i teraz nawet moje konto administratora nie widzi paska”. Rozwiązaniem jest skierowanie fragmentu kodu na konkretną rolę, zamiast stosowania go globalnie.

W skrzynce wsparcia WP STAGING najczęstszą prośbą na ten temat jest ukrycie paska dla kont klientów, które nie potrzebują dostępu administracyjnego — i Metoda 3 to dokładnie sposób, by to osiągnąć: klienci widzą witrynę jak zwykły odwiedzający, podczas gdy konto administratora właściciela witryny wciąż ma pasek narzędzi.

Zamiast tego dodaj do functions.php poniższy kod:

add_action( 'after_setup_theme', function() {
    $user = wp_get_current_user();
    if ( in_array( 'subscriber', (array) $user->roles, true )
        || in_array( 'contributor', (array) $user->roles, true ) ) {
        show_admin_bar( false );
    }
} );

Wywołuje to show_admin_bar( false ) tylko wtedy, gdy bieżący użytkownik jest subskrybentem lub współautorem. Redaktorzy, autorzy i administratorzy nadal widzą pasek normalnie.

Aby ukryć pasek dla wszystkich ról z wyjątkiem administratorów, użyj zamiast tego sprawdzenia uprawnienia manage_options:

add_action( 'after_setup_theme', function() {
    if ( ! current_user_can( 'manage_options' ) ) {
        show_admin_bar( false );
    }
} );

manage_options to uprawnienie, które oddziela administratorów od każdej innej roli w standardowej instalacji WordPress.

Metoda 4: Użyj wtyczki, aby usunąć pasek administracyjny

Jeśli wolisz podejście bez kodu, wtyczka Auto Hide Admin Bar automatycznie ukrywa pasek i przywraca go do widoku, gdy użytkownik przesunie kursor na górę ekranu.

Zaloguj się do swojego kokpitu WordPress i przejdź do Wtyczki → Dodaj nową wtyczkę.

Kliknij „Add Plugin”, aby zainstalować wtyczkę Auto Hide Admin Bar

Wyszukaj Auto Hide Admin Bar, kliknij Zainstaluj teraz, a następnie Włącz wtyczkę.

Zainstaluj i aktywuj wtyczkę Auto Hide Admin Bar

Otwórz stronę ustawień wtyczki, aby skonfigurować, które role widzą pasek, i dostosować zachowanie wysuwania.

Wyłączenie górnego paska za pomocą wtyczki Auto Hide Admin Bar

Wtyczka sprawdza się, gdy chcesz, aby pasek był dostępny dla administratorów na żądanie, bez dotykania jakiegokolwiek kodu.

Rozwiązywanie problemów: pasek administracyjny nadal się wyświetla po naprawie

Jeśli pasek administracyjny utrzymuje się po zastosowaniu jednej z powyższych metod, przejdź przez te kroki:

Pamięć podręczna. Wtyczka cache’ująca może serwować zapisaną w pamięci podręcznej stronę, która wciąż zawiera kod paska administracyjnego. Wyczyść wszystkie pamięci podręczne po wprowadzeniu zmiany, a następnie przetestuj jako zalogowany użytkownik z pominięciem cache’a. Widzieliśmy ten problem, gdy wtyczka cache’ująca serwowała CSS paska administracyjnego wylogowanym użytkownikom — weryfikacja naprawy przy wyłączonym cache’u potwierdza, czy to jest przyczyną.

Konflikt motywu lub wtyczki. Jeśli dodałeś fragment kodu do functions.php, a pasek nadal się pojawia, inna wtyczka może wywoływać show_admin_bar( true ) później w kolejności ładowania, nadpisując Twój filtr. Tymczasowo wyłączaj inne wtyczki po kolei, aby zidentyfikować konflikt.

Fragment kodu w niewłaściwym pliku. Wywołanie add_filter( 'show_admin_bar', '__return_false' ) musi zostać uruchomione, zanim zadziała akcja wp_head. Jeśli umieściłeś je w pliku szablonu zamiast w functions.php, może uruchomić się zbyt późno.

Nadpisanie z profilu użytkownika. WordPress stosuje ustawienie z profilu użytkownika po filtrze show_admin_bar. Jeśli użytkownik ma zaznaczoną opcję Pokaż pasek narzędzi podczas przeglądania witryny w swoim profilu, pasek pojawi się dla tego użytkownika nawet wtedy, gdy globalny filtr zwraca false. Odznacz tę opcję w jego profilu, aby ją nadpisać.

Podsumowanie

Pasek administracyjny WordPress jest przydatny podczas tworzenia witryny oraz dla administratorów nią zarządzających, ale często jest niepożądany na kontach klientów i użytkowników na poziomie subskrybenta. Ten przewodnik omówił cztery metody: przełącznik w ustawieniach dla użytkownika, filtr w functions.php działający w całej witrynie, fragment kodu skierowany na rolę oraz wtyczkę. Wybierz metodę odpowiadającą Twojemu przypadkowi użycia.

Przed wprowadzeniem zmian w kodzie na działającej witrynie najpierw przetestuj je na kopii staging. WP STAGING pozwala sklonować witrynę produkcyjną, abyś mógł bezpiecznie zweryfikować każdą zmianę, zanim trafi do prawdziwych użytkowników.

Powiązany artykuł

Rene Hermenau

Autor: Rene Hermenau

O autorze: René Hermenau jest założycielem WP STAGING. Zajmuje się kopiami zapasowymi WordPressa, środowiskami stagingowymi, migracjami, obsługą baz danych oraz bezpiecznymi procesami wdrażania.