仕事でちょっと勉強になったので、忘れないように備忘録。
wordpressでサイトを運用していると、どうしても管理画面に〇〇〇なページを作りたい!ということは必ずあるはず。
そこで、今回はwordpressの管理画面(wp-login.php)をカスタマイズする方法について書きます。
カスタマイズするために必要な構成
まず、管理画面はこのようになっています。
で、こちらにメニューを追加したいわけですが、
テーマごとに設定ファイルを持っているため、該当テーマのfunctions.phpを編集してやる必要があります。
wordpress/wp-content/themes/テーマ名/functions.php
まずはこのファイルを開きます。
管理画面のサイドバーにメニューを追加するときは、functions.phpに以下を追記します。
function 関数名A() {
add_menu_page('ページタイトル',
'メニューに表示するタイトル',
メニューを表示するために必要な権限,
'メニューのslug名',
'選択された際に呼び出す関数',
メニューのアイコンURL(任意),
'表示したい位置');
}
add_action('フックしたいアクション名', 'フックしたい関数名');
function 選択された際に呼び出す関数() {include '実行したい処理が書かれた.php';
}
例を書くとこんな感じ。
function add_sidebar_menu() {
add_menu_page('add_sample',
'追加したメニューはこちら',
manage_options,
'sample_slug',
'sample_function',
'sample_icon.png',
'2.0054');
}
add_action('admin-menu', 'add_sudebar_menu');
function sample_function() {include 'sample_menu.php';
}
表示したい位置については、Wordpressでセパレータが用意されています。
2 | ダッシュボード |
5 | 投稿 |
10 | メディア |
20 | 固定ページ |
25 | コメント |
60 | 外観 |
65 | プラグイン |
70 | ユーザー |
75 | ツール |
80 | 設定 |
あとは、表示したい位置の数字の下の数字を指定してやればOK。
今回の 2.0054 であれば、ダッシュボードのすぐ下になる。
また、小数点以下については適当である。
これは、表示する位置に同じ数値を指定してしまった場合、片方が上書きされてしまうためである。
これを避けるために、わざと適当な数値を置いて、競合を避けている。