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



お勧め

ログインページのタイトルを変更してみる(2018年5月27日 更新)

バージョン4.9では新しいフィルターやフィルターのパラメータの追加が多数行われている。ここではその一例としてログインページ関連で追加された2つのフィルターを紹介する。

子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(2011年12月8日 更新)

少し前に投稿した「適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす」で説明した通り、特定のカテゴリ専用のテンプレートとしてcategory-○○.phpを用意することで、category.phpやarchive.php内で振り分けを行う必要がなくなる。ただ、すべてのカテゴリ分を用意するのは効率的ではないし、特に子カテゴリについては親カテゴリと共通内容になるケースが多いのではないだろうか。ここでは、子カテゴリの個別テンプレートファイルを作らず、親カテゴリのテンプレートを利用する方法を紹介する。

meta_compare_key使ってみた(2019年3月19日 更新)

ブロックエディターの登場により、標準のカスタムフィールドを使う機会はかなり減った気がする。そんな中、5.1.0で追加されたのが、カスタムフィールド名(メタキー)に含まれる文字列を指定する'meta_compare_key'キーだ。

各種リンクを取得する関数一覧(2014年6月12日 更新)

サイト設計において、ページ間の相互リンクは重要である。WordPressでは各種ページのリンク(パーマリンク)を取得する関数を用意しており、それらを一通り把握しておくべきだろう。

Login rebuilder:プラグイン作ってみました(2019年4月22日 更新)

昨年投稿した「ログインページを変える」をプラグイン化。ログインページを独自の名前のページ変更し、標準のログインページwp-login.phpを使用できないようにするプラグインです。部外者によるwp-login.phpのアクセスにお悩みの方にお勧めします。また2.0.0では「XML-RPCリクエストの管理機能」を追加。2.2.0では管理者のログイン時にメールで通知する機能を追加しました。