Как добавить пользовательские ссылки в подменю админки WordPress?

9 мая 2017 г., 03:39:40
Просмотры: 18.9K
Голосов: 5

Возможно ли добавить пользовательские ссылки в подменю уже существующих меню wp-admin? Например, в раздел "Внешний вид", как показано на изображении: Пример добавления ссылки в подменю админки WordPress

0
Все ответы на вопрос 1
4
12

Для добавления пользовательской ссылки в меню администратора необходимо выбрать элемент верхнего уровня по его slug и зарегистрировать функцию с помощью хука действия admin_menu.

Вот список слогов главного меню администратора.

index.php => Консоль
edit.php => Записи
upload.php => Медиафайлы
link-manager.php => Ссылки
edit.php?post_type=page => Страницы
edit-comments.php => Комментарии
themes.php => Внешний вид
plugins.php => Плагины
users.php => Пользователи
tools.php => Инструменты
options-general.php => Настройки

Список всех меню и подменю администратора с их названиями, ключами и slug. Источник изображения

Список меню и подменю администратора WordPress

Если вы хотите использовать внешнюю ссылку, то код будет следующим:

add_action('admin_menu', 'add_custom_link_into_appearance_menu');
function add_custom_link_into_appearance_menu() {
    global $submenu;
    $permalink = 'http://www.customlink.com';
    $submenu['themes.php'][] = array( 'Пользовательская ссылка', 'manage_options', $permalink );
}

Если вы хотите отобразить страницу пользовательской ссылки с использованием функций Меню администратора WordPress, то код будет таким:

add_action('admin_menu', 'add_custom_link_into_appearance_menu');
function add_custom_link_into_appearance_menu() {
    add_theme_page('Заголовок страницы пользовательской ссылки', 'Заголовок меню пользовательской ссылки', 'manage_options', 'custom-link-unique-identifier', 'render_custom_link_page');
}

function render_custom_link_page() {
    echo 'Страница пользовательской ссылки';
}
9 мая 2017 г. 04:09:06
Комментарии

Большое спасибо за такой подробный ответ! Это действительно очень помогло. Спасибо!

Archangel17 Archangel17
9 мая 2017 г. 05:29:33

@archangel17 Отлично.. Рад, что это помогло!

Syed Fakhar Abbas Syed Fakhar Abbas
9 мая 2017 г. 05:47:50

Метод 1 отлично сработал для моего пользовательского типа записи. Спасибо!

Andrew Magill Andrew Magill
25 июл. 2018 г. 18:52:48

Спасибо @SyedFakharAbbas. Первый вариант сработал и у меня. Я хотел добавить вкладки страницы настроек как подпункты меню. Единственная проблема, с которой я столкнулся — это добавление класса current к ссылкам подменю. Вы знаете, как это можно сделать?

Michael Michael
25 янв. 2021 г. 20:58:16