wp_get_attachment_metadata

説明

mixed wp_get_attachment_metadata( [ int $post_id = 0 [ , bool $unfiltered = false ] ] )
添付ファイルのメタ情報を取得する。

パラメータ

  • $post_id
    添付ファイルの投稿IDを指定(省略時は0)。
  • $unfiltered
    フィルター処理を行わない場合はtrue、行う場合はfalseを指定(省略時はfalse)。

返り値

添付ファイルのメタ情報(連想配列)を返す。パラメータ$post_idが無効な場合はfalseを返す。メタ情報(連想配列)の内容は次の通り。
キー名
widthstring幅(ピクセル)
heightstring高さ(ピクセル)
hwstring_smallstring幅と高さの属性値(例:"height='96' width='115'")
filestringファイルパス名(アップロードディレクトリからの相対パス)
sizesArray他サイズのイメージ情報の連想配列。キー名はthumbnailやmediumなどで、その値は連想配列(キー名はfile、width、height)となる(注:このfileの値はディレクトリを含まないファイル名のみ)。
image_metaArrayイメージのメタ情報の連想配列。3.3.1のキー名は、aperture、credit、camera、caption、created_timestamp、copyright、focal_length、iso、shutter_speed、titleである。

注意

添付ファイルのメタ情報は、'_wp_attachment_metadata'という名前のカスタムフィールドに格納されており、 get_post_meta関数で取得できる。

使用例

  • IDが10の添付ファイルのメタ情報を取得する。
    <?php $meta = wp_get_attachment_metadata( 10 ); ?>

フィルター

パラメータ$unfilteredがfalseの場合は、パス名を返す前にwp_get_attachment_metadataフィルターが呼び出される。フィルター関数に渡る$dataには生のメタ情報が、$attachment_idには添付ファイルの投稿IDを格納されている。
return apply_filters( 'wp_get_attachment_metadata', $data, $attachment_id )

アクション

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

ソースファイル

/wp-includes/post.php

最終更新 : 2019年11月19日 12:15



お勧め

プラグインのロード順を制御する(2014年6月9日 更新)

これまでプラグインがどのような順番でロードされるか意識していなかったのだが、とある自作プラグインを他のプラグインよりも先にロードさせたくなったので調べてみた。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

Contact Form 7に確認フェーズを(2012年12月16日 更新)

Contact Form 7はWordPressによるサイト製作でお世話になることが多いプラグインの1つ。ただ、クライアント様によっては、入力、確認、送信の3フェーズにしたいという要望があり、そんな時は別の方法を採用していたのですが、JavaScript(jQuery)を使ってページ遷移しなくてもいいなら確認フェーズは用意できるかなと思い、作り込んでみた。

プラグインのヘッダー情報を国際化対応しよう(2018年5月27日 更新)

バージョン4.8がリリースされてひと段落。あらためてプラグイン一覧ページを見てみると「Akismet」が「Akismet Anti-Spam (アンチスパム)」と表示されていた。説明文だけじゃなくプラグイン名も国際化対応できたのね。

メタボックスをクラシックエディターのみで表示する(2019年1月15日 更新)

投稿画面向けにメタボックスを使ったプラグインがあり、それがブロックエディターで意図した通りに機能しなかった。この対処方法を考える過程でエディタータイプに応じてメタボックスを出し分けできる方法が見つかったので紹介したい。