이미지 설명 얻기


11

게시물을 2 열로 나누려고합니다. 첫 번째와 왼쪽은 게시물 내부의 이미지이며 두 번째와 오른쪽 the_content()이미지는 이미지를 제외합니다.

따라서 현재 모든 이미지를 가져 오는 데 아무런 문제가 없습니다. 그러나 이미지 캡션이나 제목 또는 설명을 얻을 수 없습니다.

내 코드는 다음과 같습니다.

<?php if ( $images = get_posts(array(
        'post_parent' => $post->ID,
        'post_type' => 'attachment',
        'numberposts' => -1,
        'orderby'        => 'title',
        'order'           => 'ASC',
        'post_mime_type' => 'image',
    )))
    {
        foreach( $images as $image ) {
            $attachmenturl = wp_get_attachment_url($image->ID);
            $attachmentimage = wp_get_attachment_image_src( $image->ID, full );
            $imageDescription = apply_filters( 'the_description' , $image->post_content );
            $imageTitle = apply_filters( 'the_title' , $image->post_title );
            $i++;
            if (!empty($imageTitle)) {
                echo '<div class="client-img-item ci-'.$count++.'"><img src="' . $attachmentimage[0] . '" alt="'.$imageTitle.'"  /> <div class="CAPS client-img-caption"><span class="red arrow-lrg">»</span> '.$imageDescription.'</div></div><div class="sml-dots"></div>';
} else { echo '<img src="' . $attachmentimage[0] . '" alt="" />' ; }
        }
    } else {
        echo 'No Image Found';
    }?>

WordPress 3.5.0 현재 wp_prepare_attachment_for_js( $attachment ) 트릭을 수행합니다 :)
Sven

답변:


20
function wp_get_attachment( $attachment_id ) {

$attachment = get_post( $attachment_id );
return array(
    'alt' => get_post_meta( $attachment->ID, '_wp_attachment_image_alt', true ),
    'caption' => $attachment->post_excerpt,
    'description' => $attachment->post_content,
    'href' => get_permalink( $attachment->ID ),
    'src' => $attachment->guid,
    'title' => $attachment->post_title
);
}

출처

sporkme 가 스레드에서 나중에 설명 하듯 이 이것은 functions.php에 덤프 된 다음로 호출 할 수 있습니다 $attachment_meta = wp_get_attachment(your_attachment_id);.


// gist.github.com/hullen/5443218 에서 온 것 입니까 ???
menardmam
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.