[워드프레스] 글에 들어간 바깥 그림을 으뜸 그림으로 보여 주기
워드프레스
2014/10/31 12:38
워드프레스에는 블로그에 들어간 그림 하나를 글의 으뜸 그림(featured image)으로 고르는 기능이 있다. 글의 대표 그림은 글 목록을 보여 줄 때에 미리보기 그림으로 쓰일 수 있다. 블로그에 덧붙이지 않은 바깥 그림을 글의 으뜸 그림으로 보여 주고 싶다면, 테마를 고쳐서 넣을 수 있다.
먼저 테마의 PHP 파일에서 으뜸 그림을 넣을 곳에 다음 코드가 있는지 찾는다.
<?php the_post_thumbnail(); ?>
위 코드가 있다면 아래처럼 바꾸어 주고, 없다면 대표 그림이 들어갈 곳에 아래 코드를 새로 넣어 준다.
<?php if( has_post_thumbnail() ) { the_post_thumbnail(); } else { echo my_image_display('thumbnail'); } ?>
테마의 functions.php 파일에 다음 내용을 끼워 넣어 준다.
function my_image_display($size = 'thumbnail') {
global $post, $posts;
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$image_url = isset($matches[1][0]) ? $matches[1][0] : '';
//Defines a default image
if(empty($image_url)){ $image_url = get_bloginfo('template_url') . "/images/default.jpg"; }
return "<img src=\"{$image_url}\" width=140>";
}
으뜸 그림의 가로 너비(width)와 글에 그림이 없을 때에 보여줄 그림(default.jpg)은 알맞게 바꾸어 넣어 준다. 이렇게 하면 글에 대표 그림이 지정되어 있을 때에는 그 그림을 보여 주고, 대표 그림이 지정되지 않았을 때에는 글에 들어간 첫번째 바깥 그림을 대표 그림으로 보여 준다.
덧글을 달아 주세요