add_metadata

説明

int | false add_metadata( string $meta_type, int $object_id, string $meta_key, mixed $meta_value [ , bool $unique = false ] )
WordPressオブジェクトのメタ情報を更新する。

パラメータ

  • $meta_type
    オブジェクトタイプとして'post'、'comment'、'term'、'user'などを指定。
  • $object_id
    関連するWordPressオブジェクトのIDを指定。
  • $meta_key
    メタキーを指定。
  • $meta_value
    メタ情報の値を指定。
  • $unique
    キー名のメタ情報が未登時のみ追加する場合はtrueを指定(省略時はfalse)。

返り値

メタ情報を追加できた場合はそのメタ情報IDを返す。それ以外の場合はfalseを返す。

注意

本関数は投稿メタ(カスタムフィールド)やコメントメタなどのメタ情報を追加する場合に使用し、投稿メタを追加する add_post_meta関数や、ユーザーメタを追加する add_user_meta関数などから呼び出される。

[3.1.0]"add_{$meta_type}_metadata"フィルターのコールバック関数にてメタ情報の適切な処理を行い、null以外を返した場合は、以降の処理は行われず、本関数の返り値となる。

パラメータ$uniqueがtrueで既存のメタ情報が存在する場合はすぐにfalseを返し、"add_{$meta_type}_metadata"フィルター以外のフィルター・アクションは実行されない。

メタ情報の追加に失敗した場合、"added_{$meta_type}_meta"アクションは実行されない。


使用例

  • メタ情報'access'を追加する
    add_metadata( 'user', $user_id, 'access', time() );
  • 未登録時のみメタ情報'inactive'を追加する
    add_metadata( 'user', $user_id, 'inactive', time(), true );

フィルター

[3.1.0]メタ情報の追加する前に"add_{$meta_type}_metadata"フィルターを呼び出す。パラメータ$checkにはnullが、$object_idには絶対値処理されたオブジェクトIDが、$meta_key$uniqueには本関数が受け取った内容が、$meta_valueにはサニタイズした内容が格納されている。
$check = apply_filters( "add_{$meta_type}_metadata", $check, $object_id, $meta_key, $meta_value, $unique );

アクション

[2.9.0]メタ情報を追加する前に"add_{$meta_type}_meta"アクションを呼び出す。パラメータ$object_idには絶対値処理されたオブジェクトIDが、$meta_keyには本関数が受け取った内容が、$_meta_valueにはシリアライズされていない値が格納されている。
do_action( "add_{$meta_type}_meta", $object_id, $meta_key, $_meta_value );
[2.9.0]メタ情報を追加した後に"added_{$meta_type}_meta"アクションを呼び出す。パラメータ$meta_idにはメタ情報IDが、$object_idには絶対値処理されたオブジェクトIDが、$meta_keyには本関数が受け取った内容が、$_meta_valueにはシリアライズされていない値が格納されている。
do_action( "added_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );

ソースファイル

/wp-includes/meta.php

最終更新 : 2024年06月25日 17:06



お勧め

スマートフォン向けの振り分けを自前で行う(2012年1月23日 更新)

PC向けのサイトをスマートフォン対応する場合、WPtouchやktai styleに代表されるスマートフォン対応のテンプレート切り替えプラグインを使用するのが一般的。そういったプラグインはテンプレート切り替え以外の機能も備えており、そういった機能は必ずしも必要ではない。そんなわけで、ここでは超シンプルなスマートフォン向けのテンプレート切り替えを実現する方法を紹介する。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。

適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす(2019年5月24日 更新)

/wp-includes/template-loader.phpではリクエストされたページに応じて現在のテーマにあるテンプレートファイルの中から適切なものを選びに振り分けている。ここでは、さまざまなテンプレートファイルの種類と、テンプレートファイルが省略された場合の内部の動作についてまとめてみる。

管理者ページに文言を表示する(2012年4月19日 更新)

お客様向けに管理者ページをカスタマイズする機会が増えてきている。カスタマイズするページや表示場所、表示内容によっていくつかの手段があるが、今回はページの冒頭部分に任意の文言を表示する方法を紹介する。

5.3の機能強化:ユーザーパスワードの表示と非表示(2019年9月30日 更新)

WordPress 5.3 Beta 1」に記載されていた「Toggle password view」という項目。「Other Changes for Developers」の見出しの中ということもあり、ちょっと調べてみた。