워드프레스 썸네일 등록 안된 포스트에서 썸네일 가져오기

워드프레스 3.x 부터 테마에서 썸네일을 지원하고 있습니다.

워드프레스에서는 featured image라는 메타데이터를 포스트 등록시에 등록하여 해당 이미지를 썸네일로 사용하는데요.

해당 피쳐 이미지를 등록하지 않은 포스트에서 썸네일을 가져오는 방법에 대해서 알아보도록 하겠습니다.

 

워드프레스에서 미디어버튼을 클릭하여 이미지를 등록하고 해당 이미지를 본문에 삽입을 하게 되는데요.

 

이때, 워드프레스 DB에는 해당 이미지들이 포스트를 parent_id로 가지고 있습니다.

 

따라서, 포스트에서 썸네일 이미지를 불러 올 경우 해당 포스트에 child_id를 가져와서 보여주게 되는 방식입니다.

 

이때 사용되는 워드프레스 함수로 get_children 이라는 함수를 사용하게 됩니다.

 

다음은 포스트에 속한 이미지를 가져오는 예제 소스입니다.

 

$images = get_children( array( ‘post_parent’ => get_the_id(), ‘post_type’ => ‘attachment’, ‘post_mime_type’ => ‘image’, ‘orderby’ => ‘menu_order’, ‘order’ => ‘ASC’, ‘numberposts’ => 999 ) );

이제 해당 이미지 중 첫번째 이미지를 가지고 썸네일을 생성하면 됩니다.

 

wp_get_attachment_image( $image->ID, ‘thumbnail’ );

만약 미디어를 통해 등록된 이미지가 아니라면, 본문에서 이미지 태그를 정규식으로 불러와야겠죠??^^

Leave a Reply

Your email address will not be published. Required fields are marked *

*