Настройка меню администратора в WordPress

В этом руководстве мы вам расскажем, как можно приручить ваше меню администратора в WordPress.

Мы покажем вам, как переименовать меню, изменить в нем порядок элементов, или, просто, удалить ненужные элементы, не затрагивая при этом ядра WordPress, что очень хорошо (особенно, при обновлении WordPress).

Переименование меню

Бывают такие моменты, когда вам нужно переименовать в админке какой-нибудь из элементов меню. Например, вы ведете блог по кулинарии, и “Posts” нужно переименовать в “Recipes”.

Чтобы это сделать, вам нужен хук admin_menu. Он используется для добавления подменю в меню админки WordPress, а также, в остальных операциях с меню.

Переименование меню первого уровня

Во-первых, вам нужно создать функцию, затем добавить ее к хуку в functions.php вашей темы.

Администраторское меню в WordPress хранится в массиве ($menu). И так, из кода вы видите, что функция edit_admin_menus использует глобальную переменную-массив $menu. Теперь вам необходимо определить индекс, связанный с меню, чтобы обратиться к нужному элементу, который требуется переименовать. Этот список всех меню и подменю представлен в конце этого руководства.

Поскольку мы хотим изменить “Posts” на “Recipes”, то нам нужен индекс “5″:

Верите или нет, но это все, что нужно сделать. Сохраняете functions.php, и перегружаете админскую страницу. Элемент меню изменился, но подменю осталось без изменения.

Переименование подменю

Переименование подменю происходит по той же технологии, за исключением того, что обращаться нужно к глобальной переменной $submenu. Например, вам нужно переименовать “All Posts” на “All Recipes”:

Вы можете проделать такую операцию с каждым элементом подменю. Таким образом, наша функция edit_admin_menus будет выглядеть следующим образом:

Меню записей теперь переименовано в меню рецептов. И так вы можете работать со всеми элементами меню в админке WordPress.

Изменение порядка элементов в меню

Сейчас мы вам покажем, как изменить порядок элементов в меню, включая разделители. Например, передвинем Media и Links ниже, чем Pages и Comments.

Для того, чтобы упорядочить нужным образом элементы меню в WordPress, нужно использовать фильтр menu_order для активации custom_menu_order. Для начала, скопируйте код в functions.php.

Порядок в меню организован сверху вниз. Таким образом, если вы добавите в начало массива какой-либо элемент, то он появится в меню первым, и так далее. А если вы забудете внести в массив, какой-либо элемент, то он все равно появится в меню, но будет самым последним.

Удаление элементов меню

Если вам не нужны, какие-либо элементы в меню, то их можно удалить.

Удаление элементов первого уровня

Сам процесс удаления элемента меню очень прост. В WordPress для этого есть специальная функция:

Все что нужно для remove_menu_page, так это указать, что вы хотите удалить (список в конце статьи).

Например, если вам нужно удалить из меню элемент “Tools”, то нужно написать:

Для удаления какого-либо элемента в меню можно использовать ту же функцию, что и для переименования меню. Вот пример:

Удаление элементов подменю

Удаление подменю построено по тому же принципу, что и удаление элементов из меню первого уровня. Далее пример того, как можно удалить Theme Editor из Appearance:

Разница лишь в аргументах. Нужно дополнительно указывать родителя, у которого хотим удалить подменю.
Итоговый пример будет выглядеть следующим образом:

В итоге

Как вы уже поняли, управление меню в админке WordPress достаточно простое и при этом нужное, если вы заняты в разработке тем для этой CMS. Определенная организация никогда не была во вред. И если вы разрабатываете темы, то не забывайте и про администраторскую часть разработки. Кроме того скрытие элементов меню повышает шанс непреднамеренного вреда сайту.

Как и было обещано, выкладываем списки индексов и путей для управления меню.


Оставить комментарий