Была у меня ситуация на WordPress-сайте, когда мне нужно было вывести в качестве миниатюры анонса первую картинку из поста. При этом не используя стандартный вывод миниатюры.
Почему мне это нужно было? В одной из статей хотел вставить картинку размером 600×200 и чтобы она была и как миниатюра в анонсе. А в старых постах у меня выводились миниатюры размером 300×200 стандартным тегом WP и не хотелось все рушить и перезаливать для старых постов новые картинки с новыми размерами. А если не указывать картинку в качестве миниатюры стандартным способом, а просто вставить её в начало поста, то в полной статье все хорошо, а в краткой получается, что она не выводится.
Делаем следующее: открываем файл, в котором выводится превьюшка стандартным кодом, и меняем строчку:
<?php the_post_thumbnail(array( 200,200 )); ?> |
* Она может немного отличаться параметрами в скобках.
На такой код:
<?php // Если задана миниатюра, то выводится она, иначе в качестве превью будет первая картинка из поста if ( has_post_thumbnail() ) { the_post_thumbnail(array( 200,200 )); } else { ?> <img width="200" height="200" class="entry-thumb wp-post-image" src="<?php echo get_post_image(); ?>" alt="<?php the_title(); ?>" /> <?php } ?> |
Всё!
Сделал, как написано, но картинка не появляется. Ругается, что неизвестная функция «get_post_image»
Не знаю почему у тебя ругается.
Я на этом блоге так сделал и еще на одном сайте у себя, и все норм работает.