wp_update_attachment_metadata

説明

mixed wp_update_attachment_metadata( int $attachment_id, array $data )
メディア(添付ファイル)のメタ情報を更新する。

パラメータ

  • $attachment_id
    メディアの投稿IDを指定。
  • $data
    メタ情報の連想配列を指定。

返り値

メタ情報を更新した場合はtrueを、パラメータ$attachment_idが無効か更新できなかった場合はfalseを返す。

注意

本関数で更新(保存)したメタ情報はキー'_wp_attachment_metadata'で保存される。このメタ情報を取得する場合は wp_get_attachment_metadata関数を使用する。

パラメータ$dataがnull(論理比較で偽)の場合は、メタ情報の更新ではなく、メタ情報の削除となる。


使用例

  • メディアのメタ情報を更新する。
    <?php wp_update_attachment_metadata( $attachment_id, $data ); ?>
  • メディアのメタ情報を削除する。
    <?php wp_update_attachment_metadata( $attachment_id, null ); ?>

フィルター

[2.1.0]メタ情報を更新する前に'wp_update_attachment_metadata'フィルターを呼び出す。パラメータ$dataにはメタ情報を、$post_idにはパラメータ$attachment_idから取得しなおした投稿情報の投稿IDが格納される。
$data = apply_filters( 'wp_update_attachment_metadata', $data, $post_id );

アクション

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

ソースファイル

/wp-includes/post.php

最終更新 : 2018年05月27日 10:42



お勧め

子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(2011年12月8日 更新)

少し前に投稿した「適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす」で説明した通り、特定のカテゴリ専用のテンプレートとしてcategory-○○.phpを用意することで、category.phpやarchive.php内で振り分けを行う必要がなくなる。ただ、すべてのカテゴリ分を用意するのは効率的ではないし、特に子カテゴリについては親カテゴリと共通内容になるケースが多いのではないだろうか。ここでは、子カテゴリの個別テンプレートファイルを作らず、親カテゴリのテンプレートを利用する方法を紹介する。

投稿内容に応じてwpautopを制御する(2013年8月13日 更新)

投稿内容を表示する the_content関数では、 wpautop関数がフィルターの1つとして呼び出され、改行をbrタグに変換したり、pタグで調整したりする。この機能自体は便利なのだが、きちんとデザインされたHTMLソースを流し込んだ場合はこの機能は好ましくない。そんなわけで、記事内容に応じてwpautop関数を制御できないか考えてみた。

親子の固定ページで同じテンプレートを使う(2013年3月20日 更新)

固定ページのテンプレートファイルは「page.php」か、ページ名(スラッグ)または投稿IDを指定したテンプレートファイルになる。固定ページでページデザインが数パターンある場合、通常は「page.php」で振り分けることになるが、もう少しスマートにできないか考えてみた。

管理画面でツールバー(Admin bar)を非表示にする(2013年3月5日 更新)

WordPress使ってちょっと変わったサイトを構築する際、管理画面のツールバーを表示させたくないケースがある。一般に公開するサイト側であれば、 show_admin_bar関数で非表示にできるのだが、管理画面ではこれを使ってもツールバーは消えてくれない。

カスタムフィールド関連関数のおさらい(2012年6月22日 更新)

カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。