get_registered_meta_keys

説明

array[] get_registered_meta_keys( string $object_type [ , string $object_subtype = '' ] )
メタフィールドのキー情報を取得する。

パラメータ

  • $object_type
    オブジェクトタイプ('post'、'comment'、'term'、'user'など)を指定。
  • $object_subtype
    [4.9.8]サブタイプを指定(省略時は'')。

返り値

パラメータ$object_typeおよび$object_subtypeにマッチするメタフィールドのキー情報(連想配列)を配列を返す。該当するメタフィールドがない場合は空の配列を返す。

注意

register_post_meta関数(register_meta関数)などによって登録されたメタフィールド情報を参照し、パラメータ$object_typeおよび$object_subtypeにマッチするものを返している。

[4.9.8]パラメータ$object_subtypeが追加された。

例えば、「投稿」のメタフィールドのキー情報は次のように取得する。

$keys = get_registered_meta_keys( 'post', 'post' );
var_dump( $keys );

$keysの内容は次に示すように、配列のキーにはメタフィールドのキー名が、値にはその属性情報が連想配列で格納されている。

array(1) {
  ["footnotes"]=>
  array(7) {
    ["type"]=>
    string(6) "string"
    ["description"]=>
    string(0) ""
    ["single"]=>
    bool(true)
    ["sanitize_callback"]=>
    NULL
    ["auth_callback"]=>
    string(13) "__return_true"
    ["show_in_rest"]=>
    bool(true)
    ["revisions_enabled"]=>
    bool(true)
  }
}

使用例

  • ユーザー情報のメタフィールドキー情報を取得する
    $keys = get_registered_meta_keys( 'user' );
  • カスタム投稿タイプのメタフィールドキー情報を取得する
    $keys = get_registered_meta_keys( 'post', $post_type );

フィルター

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

アクション

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

ソースファイル

/wp-includes/meta.php

最終更新 : 2023年12月28日 11:51



お勧め

5.3の新機能:日付とタイムゾーン(2019年10月2日 更新)

WordPress 5.3 Beta 1」に記載されていた「Time/Date component fixes」という見出し。開発者向として新しい関数の追加や多くのバグが修正されたとなっており、チェックせざるを得ない。

PHPとMySQLのバージョンを確認(2013年9月11日 更新)

先日、WordPressで構築されたサイトについて最新版へのバージョンアップを依頼される。使用されていたWordPressはバージョン2.xということで、最新版へバージョンアップできるのか、PHPとMySQLのバージョンを確認することになった。

ACF(Advanced Custom Fields)向けにデータをインポートした時のメモ(2023年7月11日 更新)

ACFを採用するサイトにデータをインポートする際、ほとんどのことはwww.advancedcustomfields.comに記載されていたのだが、いくつかわからないことがあった。ここでは、その時に調べたことをメモしておく。

不要なプラグインを読み込まない(2023年6月2日 更新)

稼働中のサーバーにてバックグラウンドで何か処理しようとコマンドラインのプログラムを作る際、効率化や誤動作のリスクを考えると不要なプラグインはロードしないようにしたい。そんなわけで設定内容(データベース)は変更せず、特定のプラグインをロードしないようにできないか考えてみた。

Align widgets horizontally:プラグイン作ってみました(2024年2月28日 更新)

ほぼ毎日何度も見ているダッシュボードページ。自分好みに各ウィジェットの場所を配置しているものの、何かすっきりしない。そこでふと思ったのが、ウィジェットを横並びにできれば隣り合うウィジェットの並びがガタガタしなくなるのでは!?