Cum să obții legenda atașamentului (get_the_excerpt returnează rezumatul articolului părinte) ?
Afisez atașamentele pe pagina articolului părinte cu acest cod:
$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();
}
}
Problema este că funcția get_the_excerpt() nu returnează legenda atașamentului ci rezumatul articolului părinte.
Știi cum să afișez legendele atașamentelor? Mulțumesc

get_the_excerpt()
ar trebui să funcționeze corect pentru obținerea descrierii.
Problema ta este că această funcție caută postarea pentru procesare în variabilele globale, iar în codul tău nu le configurezi corect pentru atașamentele prin care iterezi.
Trebuie să folosești setup_postdata()
pentru a funcționa corect.
O altă metodă ar fi ceva de genul:
get_post_field('post_excerpt', $attachment->ID);

Poți încerca wp_prepare_attachment_for_js( $id )
și să returnezi tot ce ai nevoie pentru atașament.
Vei primi un array cu următoarele:
- id
- title
- filename
- url
- link
- alt
- author
- description
- caption
- name
- status
- uploadedTo
- date
- modified
- menuOrder
- mime
- type
- subtype
- icon
- dateFormatted
- nonces
- editLink
- sizes
- width
- height
- fileLength
- compat
Verifică în Codex: wp_prepare_attachment_for_js()

Aceasta va rezolva problema ta
$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'];
}
}
