SSamTure.net

워드프레스

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

워드프레스 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’ );

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

1 Comment

  1. mollis
    2013/07/18 at 12:10 · Reply

    안녕하세요. 서버용량의 한계에 부딛혀 외부링크주소로 워드프레스 포스팅을 하려고 하는데요.
    본문에 이미지 넣는건 URL로 넣는게 있어서 가능한데

    FEATURED IMAGE 넣는건 안되더라구요.

    그거 해결하려고 계속 구글링하고 있는데 안되서요..ㅠㅜ

    위 소스를 어디에다가 집어넣어야 하나요?

Leave a Reply

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