オリジナルウィジェットを作ってみよう
実際にウィジェットを作ってみましょう。今回は簡単な例として、ブログの投稿数とコメント数を表示する「ステータス」というウィジェットを作成することにします。
●クラスの定義
まず、WP_Widgetクラスを継承して、クラスを定義します。ここでは、「WP_Widget_Status」というクラスを作ることにしました。空のPHPファイルを1つ作り、先頭に以下のようなコードを書きます。
class WP_Widget_Status extends WP_Widget {
クラスの定義
}
●コンストラクタの定義
次に、上のソースコードの「クラスの定義」の部分に、コンストラクタを定義します。コンストラクタの関数のパターンは、以下のようになります。
function クラス名() {
$widget_ops = array('classname' => 'ウィジェットのクラス', 'description' => 'ウィジェットの概要');
$this->WP_Widget('ウィジェットID', 'ウィジェット名', $widget_ops);
}
ソースコード中、日本語で示した箇所は、以下の表のように定義します。
パラメータ等 | 内容 |
---|---|
クラス名 | ウィジェットのクラス名を指定します。 |
ウィジェットのクラス | ウィジェット全体を囲む要素に割り当てるクラス(要素のclass属性)を指定します。 |
ウィジェットの概要 | ウィジェットの設定画面に表示する概要を指定します。 |
ウィジェットID | ウィジェットに割り当てるIDを、アルファベットの小文字で指定します。 |
ウィジェット名 | ウィジェットの設定画面に表示するウィジェット名を指定します。 |
今回の「ステータス表示ウィジェット」ではコンストラクタを以下のように定義しました。これでウィジェットの管理画面に、「ステータス表示ウィジェット」が表示されるようになります。
function WP_Widget_Status() {
$widget_ops = array('classname' => 'widget_status', 'description' => '記事数/コメント数の表示');
$this->WP_Widget('status', 'ステータス', $widget_ops);
}