web-dev-qa-db-ja.com

画像URLのカスタムフィールドからメタを取得する

Imageというカスタムフィールドがあり、そのフィールドの戻り値はImage URLです。

これらの画像フィールドをレンダリングするカスタムページテンプレートがあります。画像のURLから画像のメタ情報を取得する方法はありますか。戻り値をImage ObjectまたはImage IDに変更したくありません。

1
essjay

再利用できるように、functions.phpのコードが必要でした。これが私の解決策です。

function get_img_alt($attachment) {    
  $post = get_post();
  $image_id  = get_post_meta( $post->ID, $attachment, true );
  $image_alt = get_post_meta($image_id, '_wp_attachment_image_alt', true);
  print $image_alt;
}
0
essjay

ACFを使用していることはすでに説明しました - フィールドの戻り値の設定を変更したくない場合は、ACFを省略して投稿メタから直接イメージIDを取得するだけです。

$image_url  = get_field( 'my_field_name' );
$image_id   = get_post_meta( $post->ID, 'my_field_name', true );
$image_meta = wp_get_attachment_metadata( $image_id );
2
TheDeadMedic