久しぶりに WordPress の記事です。ちょっと聞かれたので記事にしておきます。 Custom Field GUI Utility 3 で、imagefield でアップロードした画像の各要素(アップロード画面で入力できる要素)の取り出し方を紹介します。 なお、「imagefield・filefield の使い方(ver 3.1 以降)」を前提知識とさせていただきます。...
久しぶりに WordPress の記事です。ちょっと聞かれたので記事にしておきます。
Custom Field GUI Utility 3 で、imagefield でアップロードした画像の各要素(アップロード画面で入力できる要素)の取り出し方を紹介します。
なお、「imagefield・filefield の使い方(ver 3.1 以降)」を前提知識とさせていただきます。
imagefield の設定ファイルは次のように仮定します。
[my_image]
fieldname = 画像
type = imagefield
class = post page
sample = input the example or the caption
この imagefield でアップロードした画像の情報は、次のように取り出せます(今はとりあえず echo で出力しています)。
<?php
/* imagefield でアップロードした画像の基本情報(id と url の連想配列が入る) */
$imagefield = get_imagefield('my_image');
/* 画像の情報を取得 */
$image_obj = get_attachment_object($imagefield['id']);
/* 以下、取り出せる情報を取得 */
echo "タイトル欄:" . $image_obj["title"] . "<br />";
echo "代替テキスト欄:" . get_post_meta($imagefield['id'], '_wp_attachment_image_alt', true) . "<br />";
echo "url欄:" . $image_obj["url"] . "<br />";
echo "説明欄:" . $image_obj["content"] . "<br />";
echo "キャプション欄:" . $image_obj["excerpt"] . "<br />";
echo "親記事ID:" . $image_obj["parent"] . "<br />";
echo "メディアタイプ:" . $image_obj["mime_type"] . "<br />";
echo "ファイル名:" . get_post_meta($imagefield['id'], '_wp_attached_file', true) . "<br />";
?>
基本的には、get_attachment_object($post_id) で画像の情報は取り出せますが、需要が多いと思われる「代替テキスト欄」の値は、上記のように get_post_meta($post_id, $key, $single) で取り出します。ファイル名も同様な感じですね。
以上です。