如果不存在未来帖子,则显示旧帖子

时间:2012-12-11 作者:Mister Cairns

我有一个循环设置来显示未来的帖子,但我想设置一个if语句,如果没有未来的帖子,它将显示一定数量的已发布帖子。我当前的查询如下:

        <?php
            query_posts(\'posts_per_page=5&order=ASC&post_status=future\');
            if ( have_posts() ) : while ( have_posts() ) : the_post();
        ?>
有什么想法吗?

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

example:

<?php
            query_posts(\'posts_per_page=5&order=ASC&post_status=future\');
            if ( !have_posts() ) 
            query_posts(\'posts_per_page=5&order=DESC&post_status=publish\');
            if( have_posts() ) : while ( have_posts() ) : the_post();
?>
结束

相关推荐

WP_Query->按相关度对结果进行排序(=大多数标签/分类术语通用)

我正在尝试为我的自定义帖子类型编写一个新的“相关帖子”小部件(针对单个帖子视图),按照相关帖子与当前帖子应该具有的共同自定义分类术语进行过滤。我发现this 解决方案但我想补充的是,这些帖子是按相关性排序的。我通过它们共同的分类术语的数量来确定相关性:共同的分类术语越多,相关性就越高。示例:当前帖子有标签(1)、(2)、(3)和(4)。带有标签(1)、(3)和(4)的相关帖子比只带有标签(1)和(2)的相关帖子更相关。此外,如果可能的话,我想对其中一个自定义分类术语(我假设它是一篇文章的“主要”术语)添加