Muszę dostosować panel administracyjny dla mojego użytkownika. Jak mogę usunąć całe menu administratora? Nie usuwaj pozycji menu, to znaczy całkowicie usuń lewy pionowy pasek menu, uwzględnij projekt menu (np. Css, background..etc). Chcę, żeby stało się puste.
Mogę to zrobić przez hack css. Ale wolę użyć do tego haka. Jakieś pomysły?
Dzięki
admin
admin-menu
dev-jim
źródło
źródło
Odpowiedzi:
Prawidłowym hakiem jest,
admin_menu
a następnie utwórz funkcję usuwania menu, które chcesz usunąć. Poniższe 2 funkcje usuwają wszystkie menu.Zrzut ekranu lewego menu przy użyciu powyższych 2 funkcji:
źródło
$GLOBALS['menu'] = array();
. Nadanie wartości null w tablicy również wykona pracę.Podążając za przykładem
/wp-admin/admin-header.php
->/wp-admin/menu-header.php
nie ma na to haka.Rozwiązaniem jest podłączenie się
admin_head
i wykonanie CSS + jQuery[aktualizacja]
Jak wyjaśniono w pytaniu, gdzie staje się jasne, że motywacją jest branding obszaru administracyjnego, są to 4 wtyczki, których używam do tego:
źródło
wp_enqueue_script()
zadmin_enqueue_script
hakiem.admin_head
.Jedynym przyjaznym dla haczyka sposobem, jaki znam, jest użycie
remove_menu_page()
do każdego elementu menu. Nawet wtedy nie wiem, co dzieje się z samym lewym paskiem (czy zwinąłby się do szerokości 0 pikseli, czy co). Nawet przy użyciu haków wyobrażam sobie, że w pewnym momencie będziesz chciał przełączyć arkusz stylów administratora, aby wyczyścić resztki stylów znaczników menu.Byłbym ostrożny przy robieniu tego. Na przykład, jeśli usuniesz „Ustawienia”, nie będzie można uzyskać dostępu do żadnych wtyczek tworzących strony menu w menu „Ustawienia”. Ogólnie zastanawiam się, jak naprawdę zrównoważone jest całkowite usunięcie menu.
źródło
źródło
Poprawiam rozwiązanie @brasofilo, ponieważ ma mały błąd - na stronie ponownie załaduj niezbyt najlepsze menu połączenia z Internetem pojawi się na bardzo krótki czas. Aby tego uniknąć, dodałem trochę więcej css:
źródło