WP_QUERY有条件获取帖子

时间:2013-10-25 作者:andy

我的wp\\u查询从第五个开始获取帖子,继续它是前四个的另一个循环,出于样式的原因。

如果这些帖子存在,我如何有条件地获得它们的包装?

我能让它工作的唯一方法是让容器在循环前后“正确悬挂”,显然,如果我把它放在循环中,它吐出的标记只有两个ul。

<?php echo(\'<ul class="right-hang">\'); ?>

                                <?php $featuredPosts = new WP_Query(); ?>

                                <?php $featuredPosts->query(\'showposts=2&cat=6&offset=4\'); ?>

                                <?php while ($featuredPosts->have_posts()) : $featuredPosts->the_post(); ?>


                                <li class="non-stacked">
                                <a href="<?php the_permalink() ?>">
                                    <?php the_post_thumbnail(\'extrathumb\'); ?>
                                    <span><?php the_title(); ?></span>

                                    <span class="f-category">
                                        <?php
                                        $category = get_the_category(); 
                                        echo $category[0]->cat_name;
                                        ?>
                                    </span>
                                </a>
                                </li>




                        <?php endwhile; ?>  

                        <?php echo \'</ul>\'; ?>

1 个回复
最合适的回答,由SO网友:Milo 整理而成

您可以检查查询中是否有if( $your_query->have_posts() ), 并且仅当容器通过该测试时才输出该容器。

$featuredPosts = new WP_Query( array(
    \'posts_per_page\' => 2,
    \'cat\' => 6,
    \'offset\' => 4
) );

if ( $featuredPosts->have_posts() ) :

    echo(\'<ul class="right-hang">\');

    while ( $featuredPosts->have_posts() ) :
        $featuredPosts->the_post();

    endwhile;

    echo \'</ul>\';

endif;

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post