wordpressの管理画面にオリジナルメニューを追加

wordpressはじめました

実はPHPずっとやっていながら、なんとなく触っていませんでした

コードが汚いとか言われてますが、世界中で様々な使われ方をしているので、やってみようかと

管理画面にオリジナルメニューの追加

function.phpに管理メニューへ追加するフックを設定

管理メニューにフックする関数がwordpressで用意されています

ちなみに”フック”というのは、独自の処理を追加するための仕組みです

言葉にすると難しいのですが、要はadd_action は管理画面にメニューを追加する仕組みということです

(フック(hook)とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典)

<?php add_action( $hook, $function_to_add, $priority, $accepted_args ); ?>

関数リファレンス/add action - WordPress Codex 日本語版より引用)

フックを入れてみる

// 管理メニューにフックする
add_action('admin_menu', 'admin_origin_menu');

admin_menu → actionの指定。英語の通り、管理メニューのこと。

admin_origin_menu → 呼び出す(フックする)関数名を指定

サブメニュー追加の関数を作成

add_options_pageの関数を使って、サブメニューを追加します

フックで指定したものと同じ関数名で作成

<?php add_options_page( $page_title, $menu_title, $capability, $menu_slug, $function); ?>

(管理メニューの追加 - WordPress Codex 日本語版より引用)

capability → 権限

menu_slug → メニューをクリックした時に表示するphpファイル

function → コールバック関数

実際に追加したのがこちら

function admin_origin_menu() {
    add_options_page( 'オリジナルメーニュー ページ名', 'オリジナルメニュー', 'edit_pages', 'admin_original.php', '');
}

権限は投稿者(edit_pages)にしました

これでできあがり