Як приховати меню в wordpress адмінки добірка фрагментів і модулі

Я починав цю тему з однією лише завдання, що було потрібно для недавнього проекту, проте з часом зібрав кілька корисних фішок. Хочу включити їх все в один пост щоб легше було знайти потрібну інформацію, і не переходити по десяткам посилань. Тому не дивуйтеся, що нижче представлена парочка (на перший погляд) трохи не зв'язаних фрагментів. Проте, всі вони стосуються тематики приховування меню в WordPress адмінки.
Повний список хаков, що дозволяють:
Як прибрати верхнє меню WordPress
Розпочну з найпростішої завдання. Йдеться про верхню WordPress панелі для роботи з сайтом, яка відображається не тільки в амдінке, а й у фронтенді. Відповідна опція знаходиться в розділі «Користувачі» - на сторінці редагування налаштувань:

Щоб відключити верхню панель в WordPress вам потрібно зняти відповідну галочку в параметрах профілю. За замовчуванням, при створенні нового користувача опція є активною.
Якщо ви хочете деактивувати цю фішку для всіх користувачів, щоб не відключати її кожен раз вручну, можна використовувати код:
В принципі, ніякої особливо корисної інформації / дій вона не містить, завжди деактивує дану штуку.
Як приховати пункти меню в WordPress адмінки
Для цих цілей в системі є 2 функції:
- remove_menu_page - видаляє елементи першого рівня (розділи)
- remove_submenu_page - позбавляється від підлеглих (другого рівня).
Як параметр для remove_menu_page вставляєте назву файлу, що відповідає за той чи інший розділ, наприклад:
Дві останні рядки відповідають за приховування розділів плагіна Contact form 7 і фреймворка Cherry. Плюс для сторінок використовується трохи незвичний формат. Якщо на сайті є інші таксономії, застосовуєте конструкцію:
Де custom-post-type-name - назва таксономії. Коли потрібно видалити в меню сторінку Wodpress модуля виду wp-admin / admin.php? Page = some_pageslug. допоможе код:
Для підлеглих формат запису функції дещо інший, але принцип схожий - підставляєте в якості параметрів спочатку назва розділу, а потім конкретного підпункту:
Фішка застосування remove_submenu_page в тому, що ви зможете приховати пункт меню в адмінці WordPress другого рівня, а сам розділ (Пости, Зовнішній вигляд) залишиться.
Також ви могли помітити, що в останньому випадку виклику add_action я використовував пріоритет = 999. Справа в тому, що деякі рядки не завжди спрацьовують без нього - наскільки я пам'ятаю, це стосувалося модулів і розділу Зовнішній вигляд. У мережі знаходив варіанти 99, 500, але 999 надійніше.
Прибрати спеціальні розділи таксономій теми

Як прибрати сторінку налагоджувальника тим
Приховати в меню WordPress посилання на настроювач шаблону чомусь виявилося не так просто. У мережі знайшов кілька варіантів вирішення задачі, але жоден з них у мене не спрацював. Єдине, що допомогло - метод з CSS.
Даний код розміщуєте в файлі функцій. Він додає display: none; для стилю, який використовується в пункті налагоджувальника (hide-if-no-customize). Можливо, в якійсь версії системи там буде інший class / id, дивіться код сторінки.
Прибираємо меню в WordPress для конкретного користувача
В даному випадку умова спрацьовує для двох профілів з поштою [email protected] і [email protected]. Важливо (!) Не забудьте поміняти ці значення на свої.
Як видалити меню в WP за ролями
Ось ще один сниппет. Щоб приховати меню Інструменти з WordPress для всіх, хто не є адміном, використовуйте:
Думаю, суть ви вловили.
Admin Menu Editor для модифікації меню
Я хотів вирішити питання саме за допомогою коду, але традиційно під нашу задачу є і спеціальні плагіни для WordPress адмінки. Один з них - Admin Menu Editor. Він дозволяє:
- Редагувати заголовки, іконки, CSS для навігації в системі.
- Переставляти пункти місцями за допомогою перетягування, в тому числі і змінюючи їх ієрархію.
- Показувати і приховувати меню в WordPress.
- Встановлювати різні дозволи доступу.
- Створювати нові розділи і підпункти.

В цілому інструмент цікавий, хоча в ньому потрібно буде розбиратися. Я намагався «погратися» там з ролями користувачів та приховуванням певних розділів, але якщо чесно, у мене мало що вийшло. Вирішив повернутися до звичайних сніпетів. Можливо, в майбутньому розгляну його детальніше. Модуль вельми популярний - близько 200 тисяч завантажень і високі оцінки.
Сподобався пост? Підпишись на оновлення блогу по RSS. Email або twitter.