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

最終更新 : 2021年12月15日 15:16


お勧め

WP_List_Tableクラスの「一括操作」フォームを使ってみた(2018年5月27日 更新)

今回は「WP_List_Tableクラスを使ってみた」の続き。投稿一覧やプラグインページなどにある「一括操作」(Bulkアクション)フォーム対応に関するメモである。

wp_titleからwp_get_document_titleへ(2018年5月27日 更新)

先週、WordPress 4.4 beta1(以降4.4 beta1)が公開されました。この4.4 beta1では新テーマ「Twenty Sixteen」が追加されたほか、wp-includesディレクトリ以下のファイルが大幅に変更された感じです。

WordPressのコーディングスタンダードとPSR-2がかみ合わない(2018年5月27日 更新)

先日パソコンのストレージを換装して開発環境を再構築。エディタのEclipseは「Neon(4.6)」から「Oxygen(4.7)」へ切り替わった。コードを書き始めるとそこはかとなく違和感があり、調べていくとPHPの「Code Style(Formatter)」が「PSR-2」に設定されていることが原因だった。

カテゴリー専用の投稿一覧と新規投稿メニューを追加する(2012年1月23日 更新)

サイト更新の1クリックを省くため、特定カテゴリーの投稿に対して同じようにメニューを追加してみた。カスタム投稿タイプの専用投稿メニューみたいな感じである。

さくらのVPSでKUSANAGI#3(2018年5月27日 更新)

今回は「前回」の続き。http(80番)をクローズ、そのほかに行った調整作業について整理する。