如何仅显示类别的第一篇文章的缩略图

时间:2012-10-23 14:17:47

标签: php wordpress thumbnails displaytag

我有这个代码来显示所有类别和缩略图的帖子。


<?php $recent = new WP_Query(); ?>
<?php $recent->query('cat=1&showposts=5'); ?>
<?php while($recent->have_posts()) : $recent->the_post(); ?>
<ul>
    <li>
            <a href="<?php the_permalink(); ?>">
            <?php the_title(); ?>
            </a>
       </li>
</ul>
<?php endwhile; ?>

但现在我只想要第一篇文章的缩略图。 显然,前类别有4个帖子,我显示4个帖子但只有第一个帖子有缩略图,3个帖子仍然只有标题和永久链接

3 个答案:

答案 0 :(得分:1)

快速修复可能会添加计数变量..

<?php i = 1; ?>
<?php while($recent->have_posts()) : $recent->the_post(); ?>

<ul>
    <li>
<?php if(i==1){ 
  // code to display thumbnail
 } ?>

            <a href="<?php the_permalink(); ?>">
            <?php the_title(); ?>
            </a>
       </li>
</ul>
<?php i++; ?>
<?php endwhile; ?>

答案 1 :(得分:1)

将the_post_thumbnail添加到您的输出中并添加$ postNumber以跟踪您发布的帖子号码。然后,使用if语句,您可以包含the_post_thumbnail调用。如果要将其包含在前2个中,请将if更改为$ postNumber&lt; = 2

<?php $recent = new WP_Query(); 
<?php $recent->query('cat=1&showposts=5'); ?>
<?php $postNumber = 1; ?>
<?php while($recent->have_posts()) : $recent->the_post(); ?>
<ul>
    <li>
            <a href="<?php the_permalink(); ?>">
            <?php 
                if($postNumber<=1){
                    the_post_thumbnail();
                }
                $postNumber++;
             ?> 
            <?php the_title(); ?>
            </a>
       </li>
</ul>
<?php endwhile; ?>

答案 2 :(得分:0)

<?php $recent = new WP_Query(); ?>
<?php $recent->query( 'cat=1&showposts=5' ); ?>
<?php $is_first_post = true; ?>

<?php while( $recent->have_posts() ) : $recent->the_post(); ?>
    <ul>
        <li>
                <a href="<?php the_permalink(); ?>">
                <?php the_title(); ?>
                </a>

                <?php 
                if ( $is_first_post  && has_post_thumbnail() ) {
                    the_post_thumbnail(); 
                    $is_first_post = false; 
                }
                ?>


           </li>
    </ul>
<?php endwhile; ?>