WordPressカスタマイズ事例

WordPressのプラグインを作成する(初級)

個別の案件に対応するのにプラグインを自作する必要はありません。

プラグインって他のWordPressサイトにも使いまわしすると便利でかつ汎用化されたものでないとそもそもプラグインである必要がないわけで、まあ、個別の案件でやってるときにそういうケースってほとんどないですよね。

ただ一度、ありました。
それは、割と大きめの機能があってそれを使うタイミングはユーザーのほうで決めたい、という時でした。
この機能は管理画面のメニューに表示するくらいの大きな機能で、個々の記事のサブメニューにも新項目を表示したりします。
この機能を当初は使わないけれど、いつか使う、というケース。
ということは、当初は管理画面にメニューが出ていてほしくないけど、ユーザーの簡単なアクションで出るようにして、機能も有効になるようにしたくなります。

まさにプラグインの有効/無効のアクションですね。
ということで作ったことがあります。

そこで今回はプラグインを作るときのお決まり事みたいなものを「初級編」と題してご紹介。
 
プラグインの内容としては、

管理画面で、カスタム投稿タイプ「ポートフォリオ」(スラッグ:portfolio)を対象に、投稿ごとにサブメニュー「ああって表示します。」を用意。
サブメニューは「ああ」って表示されてるだけのページ。

 
なんの意味もありません。とりあえずお決まり事を理解するためです。
 

  1. まず、display_AA.php っていうファイルを用意します。
    名前は何でもいいですが、プラグイン名と同じほうがわかりやすいですね。
  2. そのファイルを /wp-content/plugins/ フォルダに格納します。
  3. WordPress管理画面で「プラグイン」を開くと、後述する Plugin Name で定義した名前で自作プラグインが表示されます。

 
肝心の display_AA.php の記述は以下のようにします。

/*
Plugin Name: display AA
Plugin URI: http://kaiza.jp
Description:カスタム投稿タイプportfolioのサブメニューで「ああ」って表示するプラグイン
Author: Yoshihisa Tanno
Version: 1.0
Author URI:http://kaiza.jp
*/
//オブジェクトを生成
new display_AA;
//クラス定義
class display_AA {
//コンストラクタ
function __construct() {
add_action('admin_menu', array($this, 'adminAddMenu'));
}
//管理メニューの設定
function adminAddMenu() {
add_submenu_page('edit.php?post_type=portfolio', 'ああって表示します。', 'ああって表示します。',  'edit_themes', 'display_AA', array($this,'display_AA_page'));
}
//表示する内容と処理
function display_AA_page() {
echo 'ああ';
}
}

プラグインのなんたるかを宣言し、どこに置くか決めて、処理を書く。
 
以上、プラグインを作るときのお決まり事のご紹介でした。


関連するWordPressカスタマイズ事例