add_meta_box

説明

void add_meta_box( string $id, string $title, string $callback, string $page [, string $context = 'advanced' [, string $priority = 'default' [, array $callback_args = null ] ] ] )
投稿ページに独自のメタボックスを表示する。

パラメータ

  • $id
    メタボックスであるdivタグのid属性値を指定。
  • $title
    メタボックスのタイトルを指定。
  • $callback
    メタボックスの内容を表示する関数名を指定。
  • $page
    ページの種類として'post'、'page'、'link'、'dashboard'、カスタム投稿タイプ名の何れかを指定。
  • $context
    メタボックスの種別として'normal'、'advanced'、'side'の何れかを指定(省略時は'advanced')。
  • $priority
    メタボックスの優先度として'high'、'core'、'default'、'low'の何れかを指定(省略時は'default')。
  • $callback_args
    表示用関数のパラメータを指定(省略時はnull)。

返り値

返り値はありません。

注意

この関数は管理者ページ専用なので、admin_initアクションで使用する(他に適切なアクションがあるかもしれないが)。
ダッシュボードに表示する場合は、パラメータ$contextに'normal'または'side'を指定する。

メタボックスの内容を表示するための関数は、次に示すように省略可能な2つのパラメータを受け取る仕様になっている。
$outputには、パラメータ$pageが'post'の場合は編集する投稿情報オブジェクト、'dashboard'の場合は''のように、メタボックスを表示するページの種類によって値が変わる。
$boxは連想配列となり、本関数の$callback_argsで指定した内容は、$box['args']で参照できる。

function meta_box_callback( [ mixed $output [ , array $box ] ] ) {
}

使用例

  • ダッシュボードに独自のメタボックスを表示する。
    <?php
    add_action( 'admin_init', 'my_admin_init' );
    
    function my_admin_init() {
    	add_meta_box( 'my_meta_box_post', 'Hello', 'my_meta_box', 'dashboard', 'side' );
    }
    
    function my_meta_box() {
    	echo 'Hello world!';
    }
    ?>
  • 投稿ページに独自のメタボックスを表示する。
    <?php
    add_action( 'admin_init', 'my_admin_init' );
    
    function my_admin_init() {
    	add_meta_box( 'my_meta_box_post', 'Hello', 'my_meta_box', 'post' );
    }
    
    function my_meta_box( $param ) {
    	// $paramは投稿情報
    	echo 'Hello world!';
    }
    ?>

フィルター

直接実行するフィルターはありません。

アクション

直接実行するアクションはありません。

ソースファイル

/wp-admin/includes/template.php

最終更新 : 2014年11月16日 17:40



お勧め

HTML編集モードに定型文ボタンを追加する(2011年6月1日 更新)

投稿編集ページにはビジュアル編集モードとHTML編集モードがあり、それらを拡張するプラグインも多数存在している。そういったプラグインを利用するのもいいのだが、仕組みを理解するのも悪くないはず。というわけで、ここではHTML編集モードのボタンの仕組みと定型文を挿入するボタンを追加する方法を紹介する。

4.4では投稿ページも専用テンプレートが適用できる(2018年5月27日 更新)

従来、特定の固定ページには専用テンプレートを適用できるのですが、投稿ページに適用させるためにはアクションやフィルターを利用する必要がありました。4.4では特定の投稿ページに標準で専用テンプレートを適用できるようになりそうです。

3.2標準テーマ「Twenty Eleven」は投稿フォーマットに着目(2011年7月6日 更新)

新テーマ「Twenty Eleven」のトップページでは、投稿フォーマットに応じて表示を切り替える仕組みが提案されている。ここでは、その投稿フォームの活用方法を簡単に紹介する。

標準で使用できる数少ないショートコード[caption]とは(2018年5月27日 更新)

画像をアップロードして「投稿に追加」ボタンをクリックすると、投稿記事内にリンク付きのimgタグか、ショートコードのが挿入される。ここではそれらの書式を整理する。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。