register_meta

説明

bool register_meta( string $object_type, string $meta_key, array $args [ , string | array $deprecated = null ] )
WordPressオブジェクトのメタ情報を登録する。

パラメータ

  • $object_type
    オブジェクトタイプとして'post'、'comment'、'term'、'user'などを指定。
  • $meta_key
    メタキーを指定。
  • $args
    メタ情報の諸設定を連想配列で指定。主な内容は次の通り。
    キー内容デフォルト値
    'object_subtype'[4.9.8]サブタイプ($object_typeが'post'の場合は'post'や'page'などの投稿タイプ)''
    'type'データタイプ('string'、'boolean'、'integer'、'number'、'array'、'object')'string'
    'label'[6.7.0]ラベル''
    'description'説明文''
    'default'[5.5.0]デフォルト値''
    'single'1つのメタキーに1つの値を保持する場合はtrue、複数の値を保持する場合はfalseを指定false
    'sanitize_callback'サニタイズを行うコールバック関数を指定null
    'auth_callback'edit_post_meta、 add_post_meta delete_post_meta関数が使用された際に権限を確認するコールバック関数を指定null
    'show_in_rest'REST APIで使用する場合はtrueを指定false
    'revisions_enabled'[6.4.0]リビジョンに対応する場合はtrueを指定($object_typeが'post'の場合のみ有効)false
  • $deprecated
    [4.6.0]非推奨に変更。コールバック関数が指定された場合は$args['auth_callback']に適用される。

返り値

メタ情報を登録できた場合はtrueを返す。登録できなかった場合はfalseを返す。

注意

本関数は投稿メタ(カスタムフィールド)やコメントメタなどのメタ情報を登録する場合に使用する。投稿メタの登録は、 register_post_meta関数が使用できる。

[4.6.0]第3パラメータが連想配列に変わり、第4パラメータが非推奨になった。

[5.3.0]パラメータ$args['type']に'array'と'object'が指定可能になった。

[6.7.0]パラメータ$args['label']が追加された。


使用例

  • REST APIで使用できるユーザーメタ情報を登録する
    register_meta( 'user', 'picture_id', array(
    	'type'         => 'integer',
    	'single'       => true,
    	'show_in_rest' => true,
    ) );

フィルター

[4.6.0]パラメータ$argsにデフォルト値を適用する前に'register_meta_args'フィルターを呼び出す。パラメータ$argsにはメタ情報の諸設定を格納した連想配列が、$defaultsには諸設定のデフォルト値を格納した連想配列が、$object_type$meta_keyには本関数が受け取った内容が格納されている。
$args = apply_filters( 'register_meta_args', $args, $defaults, $object_type, $meta_key );

アクション

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

ソースファイル

/wp-includes/meta.php

最終更新 : 2024年11月20日 11:13



お勧め

Login rebuilder 2.3.0の新機能を紹介(2018年5月27日 更新)

プラグイン「Login rebuilder」はログイン時の履歴(ログ)や不正なログインページへのアクセス履歴を保存している。これらの履歴情報はダッシュボートで確認できるが、バージョン2.3.0においてそれぞれがダウンロードできるようになった。

古めのリビジョンを削除した時のメモ(2022年5月16日 更新)

大きく育ったデータベースを整理するため、古めのリビジョンとそれに紐づいたカスタムフィールドデータを削除。と思ったら「The total number of locks exceeds the lock table size」というエラーが発生して削除できなかった。

決まった値を返すだけの関数群(2018年5月27日 更新)

WordPressのソースコードを眺めているとフィルター関数名で'__return_○○'が指定されている部分を時々見かけます。それらの関数定義を見てみると、すべて決まった値を単純に返すだけでした。これらの関数がちょっと気になったので、まとめてみました。

「Align widgets horizontally」プラグインのフィルター使用例(2024年5月15日 更新)

ダッシュボードのウィジェットを横並びに変える「Align widgets horizontally」プラグインには緒設定を変更できるフィルターが用意されている。ここではフィルターの使い方と設定できる項目について紹介する。

WP_Postオブジェクトで投稿情報を直感的に使う(2012年10月4日 更新)

WordPress 3.5で登場するであろう WP_Postクラス。WordPressの投稿情報は、投稿情報本体のほか、カテゴリーや投稿タグ、カスタムフィールドなど、いくつかに分散して記録され、それぞれの情報を取得する際は、いくつかの関数をしていた。新しいWP_Postクラスにより、その習慣とおさらばできるかもしれない。