2016-01-07 3 views
5

Я попытался получить значение привязки метафайла как mentioned here, но не смог получить какой-либо результат. Другие мета-массивы, такие как [created_timestamp] или [iso], дали свои значения.Wordpress получить изображение прикрепления изображения

$img_meta = wp_get_attachment_metadata($id); 
echo $img_meta[image_meta][caption]; 

Эта проблема возникает как с [caption], так и с [title]. Буду признателен за любую оказанную помощь.

+0

Может быть, значение просто пусто или что значение вообще не существует. В любом случае попробуйте «[print_r ($ img_meta)] (http://php.net/print_r)», это должно отображать весь массив с ключами и значениями. –

+0

То есть изображение мета из изображения не из WordPress - так что ваши изображения не имеют метаданных, которые были применены, когда они были сделаны. То же, что и пример на странице codex, с которой вы связаны. –

+0

@SimonPollard Конечно, я использовал эти значения для используемых изображений. –

ответ

9

Подпись и заголовок, которые вы хотите получить из wp_get_attachment_metadata, не являются заголовком и заголовком, который вы добавляете в WordPress, они являются метаданными самого фактического изображения. Чтобы получить данные WordPress, используйте что-то вроде этого (предполагая, что $ id является идентификатором вашего изображения).

$image = get_post($id); 
$image_title = $image->post_title; 
$image_caption = $image->post_excerpt; 
+1

Не могли бы вы поделиться ссылкой на эту страницу? –

+1

https://wordpress.org/support/topic/get-title-alt-or-caption-from-media-library-and-insert-into-theme для точного кода - главное, что wp_get_attachment_metadata не получает что вам нужно, хотя я могу понять, почему вы его используете, имя очень сбивает с толку :) –

+0

Это решение не дало запрашиваемых значений –

5

Поскольку WordPress 4.6.0 есть get_the_post_thumbnail_caption($post), который получает подпись к указанному сообщению.

+0

Вы можете передать ему $ post, но получить конкретное значение –

Смежные вопросы