Как получить заголовок прикрепления (get_the_excerpt дает родительский отрывок)?

Я показываю вложения на родительской странице с этим кодом:

$args = array('post_type' => 'attachment', 'post_mime_type' => 'image', 'order'=> 'ASC', 'numberposts' => -1, 'post_status' => null, 'post_parent' => $post->ID ); $attachments = get_posts($args); if ($attachments) { foreach ( $attachments as $attachment ) { $attachments_url[] = $my_image; $attachments_caption[] = get_the_excerpt(); } } 

проблема заключается в том, что в выдержке нет заголовка прикрепления, кроме выдержки из выписки.

знаете ли вы, как отображать подписи приложения? Спасибо

Solutions Collecting From Web of "Как получить заголовок прикрепления (get_the_excerpt дает родительский отрывок)?"

get_the_excerpt() должен работать для получения заголовка.

Ваша проблема заключается в том, что он ищет сообщение для обработки в глобальных переменных и в вашем коде там вы не настраиваете его с помощью вложений, которые вы выполняете.

Для этого вам нужно использовать setup_postdata() .

Другой способ:

 get_post_field('post_excerpt', $attachment->ID); 

Вы можете попробовать wp_prepare_attachment_for_js( $id ) и вернуть все необходимое для вложения.

Вы получите массив с этим:

  • Я бы
  • заглавие
  • имя файла
  • URL
  • ссылка
  • альт
  • автор
  • описание
  • подпись
  • имя
  • положение дел
  • uploadedTo
  • Дата
  • модифицированный
  • menuOrder
  • мим
  • тип
  • подтип
  • значок
  • dateFormatted
  • одноразовые
  • editLink
  • размеры
  • ширина
  • высота
  • fileLength
  • Compat

Проверьте Codex: wp_prepare_attachment_for_js ()

Это позволит исправить вашу проблему

 $attachments = attachments_get_attachments(); $total_attachments = count( $attachments ); if( $total_attachments ){ for( $i=0; $i<$total_attachments; $i++ ){ echo $attachments[$i]['title']; echo $attachments[$i]['caption']; echo $attachments[$i]['id']; echo $attachments[$i]['location']; echo $attachments[$i]['mime']; echo $attachments[$i]['filesize']; } }