我正在尝试按日期(月)创建博客帖子列表,并显示每个帖子的特色图片。
<div id="datePostTime"><h2>Posts for <?php echo get_the_date(\'F, Y\'); ?></h2></div>
<?php // The loop ?>
<?php if ( have_posts() ) {
while ( have_posts() ) {
if ( has_post_thumbnail() ) {
echo "<div id=\'post_thumbnail\'>";
the_post_thumbnail();
echo \'<h4>\' . get_post(get_post_thumbnail_id())->post_excerpt . \'</h4>\';
echo "</div>";
}
the_post();
the_content();
echo "<br />";
echo "<div id=\'the_post_date\'>";
the_date(\'\',\'Article posted on \', \'.\');
echo "</div>";
echo "<br />";
} // end while
} // end if ?>
我上面的代码显示了每个博客帖子。但是,每个博客帖子都会发布第一个缩略图。因此,无论我为帖子选择什么缩略图,它们都显示与第一个加载的图像相同的图像。
看起来是这样的-
> Image 1
> My Post
> Post date
> Image 1 again
> My next post
> next post date
为什么我要重复缩略图?
最合适的回答,由SO网友:Pieter Goosen 整理而成
这是错误的
<?php if ( have_posts() ) {
while ( have_posts() ) {
if ( has_post_thumbnail() ) {
echo "<div id=\'post_thumbnail\'>";
the_post_thumbnail();
echo \'<h4>\' . get_post(get_post_thumbnail_id())->post_excerpt . \'</h4>\';
echo "</div>";
}
the_post();
您之前正在调用缩略图
the_post()
. 快走吧
the_post()
至之前
if ( has_post_thumbnail() ) {