register_post_meta

説明

bool register_post_meta( string $post_type, string $meta_key, array $args )
投稿向けのカスタムフィールドを登録する。

パラメータ

  • $post_type
    投稿タイプを指定。
  • $meta_key
    カスタムフィールド名を指定。
  • $args
    カスタムフィールドの属性情報を連想配列で指定。
    キー内容
    'type'stringデータタイプとして'string'、'boolean'、'integer'、'number'、'array'および'object'のいずれか(省略時は'string')
    'description'stringカスタムフィールドの説明(省略時は'')
    'default'mixed[5.5.0]カスタムフィールドの初期値(省略時は'')
    'single'bool1つカスタムフィールド名で複数の値を保持しない場合はtrueを指定(省略時はfalse)
    'sanitize_callback'callableサニタイズ用のコールバック関数(省略時はnull)
    'auth_callback'callableケイパビリティ(権限)確認用のコールバック関数(省略時はnull)
    'show_in_rest'bool|arrayREST API向けの設定(省略時はfalse)

返り値

カスタムフィールドを登録できた場合はtrueを、登録できなかった場合はfalseを返す。

注意

本関数はすぐに register_meta関数を呼び出す。その際、本関数のパラメータ$post_typeはパラメータ$argsのキー'object_subtype'の値となる。

ブロックエディターでカスタムフィールドを使用する場合、本関数を使って登録する必要がある(バージョン5.8.2現在)。

'sanitize_callback'と'auth_callback'に指定するコールバック関数のパラメータは次の通り。

function sanitize_func( mixed $meta_value, string $meta_key, string $object_type, string $object_subtype )
function auth_func( bool $allowed, string $meta_key, int $object_id, int $user_id, string $cap, array $caps )

使用例

  • 投稿向けのカスタムフィールド'extra_text'を登録する
    register_post_meta( 'post', 'extra_text', array( 'single' => true ) );

フィルター

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

アクション

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

ソースファイル

/wp-includes/post.php

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



お勧め

個人データのエクスポートメール向けに追加された新フィルター(2020年4月2日 更新)

先週「WordPress 5.4 RC3」が公開され、正式リリースまであと1週間。ブロックエディターの機能強化が目立つわけですが、地味な変更点もちらほらと。今回はその中の1つ、「個人データのエクスポート」機能に関連するフィルターを紹介する。

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

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

サイドバーの初期化はwidgets_initアクションで(2011年7月14日 更新)

ウィジェットを使ってみたくなり新テーマ「Twenty Eleven」を覗いてみると、codexに記載されていた内容と少し違っている。これって「Twenty Ten」ですでに変更されていたんだね。

Gutenbergでカスタムフィールドを使う(2018年8月10日 更新)

Gutenbergの新エディターではカスタムフィールドのウィジェットが表示されない。既存のカスタムフィールドのデータはなくなるわけでないので、新エディター上で編集・更新できないか調べてみた。

favicon.icoがWordPressロゴになる!?(2020年2月25日 更新)

先週「WordPress 5.4 Beta2」が公開され、来月末には正式リリース。タイミングよく三連休だったので、1つ前の「ニュース」で紹介されていた変更点から確認してみた。