26
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【WordPress】 管理画面にメニューを追加する方法

Last updated at Posted at 2014-07-12

管理画面に独自のメニューを追加できる関数
管理画面で好きなようにいじりたいときに便利

functions.php
add_menu_page('ページタイトル', 'メニュータイトル', '権限', 'メニュースラッグ', '呼び出し関数', 'アイコンURL', '表示位置');
オプション 意味
ページタイトル 表示するページのtitle
メニュータイトル メニューに表示される
権限 ユーザーごとのアクセス権
スラッグ 管理するスラッグ
呼び出し関数 呼び出す関数
アイコンURL アイコンのURL
表示位置 いろいろ選べる WordPress管理画面メニューの任意の位置にセパレーターを設置する。

呼び出し関数の中で、表示したい内容を記述すれば、追加したメニューに反映されます。

追記

普通にadd_menu_pageを読んでもエラーになってしまうので、アクションフックを使用します。

functions.php
//管理画面に優先度メニューを追加
function mt_add_pages() {
	add_menu_page( 'page_title', 'menu_title', 'edit_themes', __FILE__, 'priority_edit', '', 8);
}
add_action('admin_menu', 'mt_add_pages');

サブメニューの追加方法

サブメニューを追加したい場合は、add_submenu_pageを使います。
管理メニューの追加 / add_submenu_page の使用

add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function);

functions.php
function add_sub_menu() {
	add_submenu_page('edit.php?post_type=wiki', 'Options', 'Options', 'manage_options', 'wiki-options', array(&$this, 'options_page') );
}
add_action( 'admin_menu', 'add_sub_menu' );

第一引数に親メニューのスラッグ名を設定します。設定できる値は以下。

$parent_slug
ダッシュボード用 index.php
投稿用 post-new.php
メディア用 upload.php
固定ページ用 edit.php?post_type=page
コメント用 edit-comments.php
カスタム投稿タイプ用 edit.php?post_type=your_post_type
外観用 themes.php
プラグイン用 plugins.php
ユーザ用 users.php
ツール用 tools.php
設定用 options-general.php
26
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
26
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?