WordPressのテーマやプラグインを作成時、管理画面にメニューまたはページを追加したいときがあると思います。特にプラグインの作成するときは独自の設定画面を作る場合が多いと思いますが、どこのメニューに追加するかサクッとできるように記事にしてみました。
参考元:http://wpdocs.sourceforge.jp/Adding_Administration_Menus
トップレベルメニューに追加する
トップレベルメニューは、左側に現れるメニューのうち、一番最初から選択できるメニューです。
1 |
add_menu_page('page_title', 'menu_title', 'access_level/capability', 'file', '[function]', '[icon_url]'); |
- page_title:表示された時のタイトル
- menu_title:メニュー名
- menu_title:閲覧・使用するために最低限必要なユーザーレベルまたはユーザーの種類と権限
- file:使用するPHPファイル
- function(オプション):呼び出す関数(ページ生成コードを持つ関数など)
サブメニューに追加する
サブメニューとして管理画面にメニューを追加する場合。ほとんど同じですが、親の指定が必要です。
また、コーデックに以下のように記載されています。
プラグインがトップレベルメニューを持つ場合、最初のサブメニューはトップレベルメニューと同じ名前を持ち、従ってリンクは複製されます。リンクの複製を避けるには、はじめにadd_submenu_page関数を呼び出し、parentとfileパラメータを同じ名前にします。
1 |
add_submenu_page('parent', 'page_title', 'menu_title', 'access_level/capability', 'file', '[function]'); |
- parent:
親の表示ファイル名を指定。プラグインの場合はそのプラグインファイル名。
(投稿用:’post-new.php’、管理用:edit.php、外観用:’themes.php’、コメント用:’edit-comments.php’、設定用: ‘options-general.php’、プラグイン用:’plugins.php’、ユーザ用:’users.php’) - page_title:>表示された時のタイトル
- menu_title:メニュー名
- menu_title:>閲覧・使用するために最低限必要なユーザーレベルまたはユーザーの種類と権限
- file:使用するPHPファイル。プラグインがトップレベルメニューの場合は[parent]と同じにする。
- function(オプション):呼び出す関数(ページ生成コードを持つ関数など)
サブメニュー追加で用意されているコード
既存のトップレベルメニューにサブメニューで追加できる関数がいくつか用意されているようです。
- 「設定」にサブメニューを追加
-
1add_options_page('page_title', 'menu_title', 'access_level/capability', 'file', '[function]');
- 「ツール」にサブメニューを追加
-
1add_management_page('page_title', 'menu_title', 'access_level/capability', 'file', '[function]');
- 「外観」にサブメニューを追加
-
1add_theme_page( 'page_title', 'menu_title', 'access_level/capability', 'file', '[function]');
コメントを残す