WordPress: Как добавить в админку кастомную страницу настроек

Категория: WordPress

Добавляем в админку WordPress страницу для управления кастомными настройками.

В этом примере я добавлю кастомную страницу настроек для нового плагина top-tags.

Создаем файл плагина в новом каталоге с плагинами wp-content/plugins/top-tags/top-tags.php:

<?php
/*
Plugin Name: Top Tags
Author: 
Description: 
Plugin URI:
Version: 0.0.1
*/

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

add_action('admin_menu', 'top_tags_register_admin_page');
function top_tags_register_admin_page() {
    add_submenu_page(
        'edit.php',
        'ТОП теги для категорий',
        'ТОП теги',
        'manage_categories',
        'top-tags',
        'top_tags_render_admin_page'
    );
}

function top_tags_render_admin_page() {
    include plugin_dir_path(__FILE__) . 'admin-page.php';
}

В качестве capacibility я указал manage_categories. Подробнее об опциях capacibility здесь: https://codex.wordpress.org/Roles_and_Capabilities#Capability_vs._Role_Table

Создайте в каталоге плагина шаблон wp-content/plugins/top-tags/admin-page.php, контент которого и будет рендерится на странице нашего нового меню:

<div class="wrap">
  <h2>TOP теги</h2>
  <div>
    Ваша панель настроек плагина
  </div>
</div>
<div class="clear"></div>

Успехов!


Кастомная страница настроек WordPress с собственным подменю

#Подборка: разработка плагина

категория: WordPress