▶①で準備したプラグインフォルダに、プラグインファイル(phpファイル)を作成する
今回は「sample-plug-index.php」という名前でファイルを用意します。
/www/sample/wp-content/plugins/sample-plug
┗ sample-plug-index.php
▶上で作成した「sample-plug-index.php」ファイルを開いて、プラグインヘッダーを書きます。
今回は最低限必要そうな項目しか取り上げていないです。
前後の「/*」「*/」で囲むのが重要なので、忘れないようにしてください。
「Plugin Name」は必須なので、必ず入力してください。
PHP (sample-plug-index.php)
<?php
/*
Plugin Name: プラグインのテスト //【プラグイン名】(必須)
Plugin URI: //【プラグインのホームページURL】
Description: テスト用のプラグインです //【プラグインの簡単な説明】(140文字未満)
Version: 1.0.0 //【プラグインのバージョン】
Author: //【プラグインの作成者名】
Author URI: //【作成者のホームページURL】
*/
?>
▶メニュー追加用の関数を用意
ダッシュボードに表示されるメニューを用意します。
今回は「sample_plug_test_block」という関数を用意して、その中にメニュー追加用の「add_menu_page」を記載します。
PHP (sample-plug-index.php)
<?php
/*
Plugin Name: プラグインのテスト
Plugin URI:
Description: テスト用のプラグインです
Version: 1.0.0
Author:
Author URI:
*/
function sample_plug_test_block(){
add_menu_page(
'サンプルプラグイン-タイトル', //【ページのtitleに表示されるテキスト】
'サンプルプラグイン', //【メニューに表示されるテキスト】
'administrator', //【アクセス権限】
'sample-plug-test', //【スラッグ名】
'sample_plug_test_func', //【実行する関数】
'dashicons-admin-generic', //【表示させるアイコン】
21 //【表示位置】
);
}
?>
add_menu_page(
$page_title,
$menu_title,
$capability,
$menu_slug,
$callback,
$icon_url,
$position
);
各パラメーターは以下の通りです。
type名 |
内容 |
$page_title必須 |
ページのタイトルに表示されます |
$menu_title必須 |
メニューに表示されます |
$capability必須 |
アクセス権限
-
administrator(管理者)
すべての管理機能にアクセスができる。
-
editor(編集者)
他のユーザーも含む、全ての投稿の公開、管理ができる。
-
author(投稿者)
自身の投稿を公開、管理できる。
-
contributor(寄稿者)
自身の投稿を管理できるが、公開は出来ない。
-
subscriber(購読者)
自身のプロフィールのみ変更できる。
|
$menu_slug必須 |
スラッグ名
管理画面上で独自プラグインページを表示したときに
/wp-admin/admin.php?page=sample-plug-test
のように表示されます。
|
$callback |
実行する関数 |
$icon_url |
表示させるアイコン
アイコンの種類は「こちら(https://developer.wordpress.orgサイト)」を確認してみてください。
|
$position |
表示位置
以下の数字が、デフォルトメニューの位置番号なので、「固定ページ」の下にメニューを表示させたい場合は「21」というように番号を設定します。
- 2 – Dashboard(ダッシュボード)
- 4 – Separator(セパレーター)
- 5 – Posts(投稿)
- 10 – Media(メディア)
- 15 – Links(リンク)
- 20 – Pages(固定ページ)
- 25 – Comments(コメント)
- 59 – Separator(セパレーター)
- 60 – Appearance(外観)
- 65 – Plugins(プラグイン)
- 70 – Users(ユーザー)
- 75 – Tools(ツール)
- 80 – Settings(設定)
- 99 – Separator(セパレーター)
|
▶アクションフックで用意した関数を読み込み
ワードプレスの関数、「add_action(アクションフック)」を使って、先ほど用意した追加メニューの関数を読み込ませます。
PHP (sample-plug-index.php)
<?php
/*
Plugin Name: プラグインのテスト
Plugin URI:
Description: テスト用のプラグインです
Version: 1.0.0
Author:
Author URI:
*/
function sample_plug_test_block(){
add_menu_page(
'サンプルプラグイン-タイトル',
'サンプルプラグイン',
'administrator',
'sample-plug-test',
'sample_plug_test_func',
'dashicons-admin-generic',
21
);
}
add_action( 'admin_menu', 'sample_plug_test_block' ); //【アクションフック】
?>
add_action( $hook_name, $callback, $priority, $accepted_args );
各パラメーターは以下の通りです。
今回は「admin_menu」を使っています。
type名 |
内容 |
$hook_name必須 |
フック名
フック一覧は「こちら(https://developer.wordpress.org/サイト)」
-
admin_menu
管理メニューが読み込まれる前に発生
|
$callback必須 |
アクションが呼び出されたときのコールバック(関数名) |
$priority |
関数が実行される順番を整数で指定
デフォルト=10(何も設定しない場合) |
$accepted_args |
関数が引き受ける引数の数を指定
デフォルト=1(何も設定しない場合) |
PHP (sample-plug-index.php)
<?php
/*
Plugin Name: プラグインのテスト
Plugin URI:
Description: テスト用のプラグインです
Version: 1.0.0
Author:
Author URI:
*/
function sample_plug_test_block(){
add_menu_page(
'サンプルプラグイン-タイトル',
'サンプルプラグイン',
'administrator',
'sample-plug-test',
'sample_plug_test_func',
'dashicons-admin-generic',
21
);
}
add_action( 'admin_menu', 'sample_plug_test_block' );
//実行する関数
function sample_plug_test_func(){
echo('プラグインの画面が表示されます');
}
?>