Добавление пользовательской страницы в админке
Я хочу добавить страницу с контентом (файл readme) в админ-панель WordPress, но не могу найти информацию об этом в кодексе - может кто-нибудь подсказать, как это сделать? По сути, это будет простая страница с несколькими абзацами текста.

Вам нужно всего два шага:
- Подключиться к хуку
admin_menu
, зарегистрировать страницу с callback-функцией для вывода контента. - В callback-функции загрузить файл из
plugin_dir_path( __FILE__ ) . "included.html"
.
Демонстрационный код:
add_action( 'admin_menu', 'wpse_91693_register' );
function wpse_91693_register()
{
add_menu_page(
'Включить текст', // заголовок страницы
'Включить текст', // заголовок меню
'manage_options', // права доступа
'include-text', // ярлык меню
'wpse_91693_render' // callback-функция
);
}
function wpse_91693_render()
{
global $title;
print '<div class="wrap">';
print "<h1>$title</h1>";
$file = plugin_dir_path( __FILE__ ) . "included.html";
if ( file_exists( $file ) )
require $file;
print "<p class='description'>Подключено из <code>$file</code></p>";
print '</div>';
}
Я добавил пример в свой демонстрационный плагин T5 Admin Menu Demo, чтобы показать, как это сделать в подменю и в ООП стиле.

Только что попробовал это, выглядит отлично, но есть ли способ добавить это в подменю моего пользовательского типа записи? Вместо того, чтобы создавать отдельное меню.

Пробовал использовать 'show_in_menu' в пользовательском типе записи, но тогда появляется меню, которое не отображает страницу и не показывает "Добавить новую" для пользовательского типа записи.

Решено! Для тех, кто столкнулся с такой же проблемой: попробуйте использовать add_submenu_page и просто добавьте дополнительный параметр для родительского slug, как описано здесь: http://codex.wordpress.org/Function_Reference/add_submenu_page
