説明
パラメータ
- $post_type投稿タイプを指定。
- $meta_keyカスタムフィールド名を指定。
- $argsカスタムフィールドの属性情報を連想配列で指定。
キー 型 内容 'type' string データタイプとして'string'、'boolean'、'integer'、'number'、'array'および'object'のいずれか(省略時は'string') 'description' string カスタムフィールドの説明(省略時は'') 'default' mixed [5.5.0]カスタムフィールドの初期値(省略時は'') 'single' bool 1つカスタムフィールド名で複数の値を保持しない場合はtrueを指定(省略時はfalse) 'sanitize_callback' callable サニタイズ用のコールバック関数(省略時はnull) 'auth_callback' callable ケイパビリティ(権限)確認用のコールバック関数(省略時はnull) 'show_in_rest' bool|array REST 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
関連
お勧め
テキストエディタの文字を変更する(2018年5月27日 更新)
テキストエディタ(投稿ページの「テキスト」タブのエディタ)に標準では備わっていない機能を追加する自作プラグイン「html entities button」がほぼ1年ぶりにアップデート。ここではバージョン2.0.0で追加したテキストエディタのフォント切り替え機能について紹介する。
query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)
先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。更新ボタンの横にスピナーを実装する(2019年5月14日 更新)
WordPressの管理画面ではAJAXを使って何らかの処理を行う際、数秒間の空き時間にアイコンがクルクル回る「スピナー」を表示しているところがある。今作っているプラグインでこの「スピナー」を使いたくなったので、実装方法を調べてみた。
公式ディレクトリに登録するならajax.googleapis.comのライブラリは利用しない(2018年5月27日 更新)
数日前、投稿一覧ページの絞り込みドロップダウンメニューを複数選択可能にするプラグイン「Posts filter multiselect」を公開したのですが、その際に指摘されたポイントを紹介します。
Login rebuilder 2.3.0の新機能を紹介(2018年5月27日 更新)
プラグイン「Login rebuilder」はログイン時の履歴(ログ)や不正なログインページへのアクセス履歴を保存している。これらの履歴情報はダッシュボートで確認できるが、バージョン2.3.0においてそれぞれがダウンロードできるようになった。