Доброе утро, уважаемые коллеги. Часто, при создании свой темы для блога или сайта, в шаблоне нужно получить первую (или не первую) картинку. Как это сделать, вы узнаете в этой записи.
Для того, чтобы получить первую картинку с записи wodpress, я использую следующую функцию:
function get_post_image() { global $post, $posts; $first_img = ''; ob_start(); ob_end_clean(); $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches); $first_img = $matches [1] [0]; if(empty($first_img)){ $img_dir = get_bloginfo('template_directory'); $first_img = $img_dir . '/images/post-default.jpg'; } return $first_img; }
Особенности данной функции:
$first_img = $matches [1] [0];
<a href="#"><img src="#" /></a>
не будет работать.
Данную функцию необходимо скопировать в файл functions.php вашей темы. Для того чтобы использовать её, нужно в шаблоне прописать следующий код:
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><img src="<?php echo get_post_image(); ?>" alt="<?php the_title(); ?>" /></a>
Этот код выведет первую картинку с поста с ссылкой на него.
Я надеюсь, что помог вам получить первую картинку записи wordpress. Если у вас что-то не получилось, то пишите в комментариях о своих проблемах, а я вам обязательно помогу.
Категории: wordpress
Метки: программирование