【问题标题】:WP_Query in category and random posts类别和随机帖子中的 WP_Query
【发布时间】:2014-03-13 08:25:53
【问题描述】:

我正在开发一种“相关帖子”类型的插件,并希望在特定类别中显示随机相关的帖子。这是最简单的部分,我正在这样做:

$args=array(
    'category__in' => $categories,
    'showposts' => $post_count, 
    'orderby' => 'rand',
);

$related_query = new WP_Query($args);

现在我的问题是帖子计数并不总是得到满足,我希望查询始终返回指定的帖子数。

例如,我的 $post_count 是 4,但我们查询的类别只返回 2 个帖子。我希望其余的填写随机帖子。

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    最简单的解决方案是检查返回帖子的数量是否等于 4。如果不是,请为所有类别的帖子创建另一个查询除了$categories 中的帖子。那里的计数应该是(4 - the number of results from the first query)。这样一来,您将始终获得 4 个帖子,并且来自指定类别(y/ies)的帖子将首先显示。

    【讨论】:

    • 谢谢。我接受了这个答案,这就是我最终使用的答案,但现在我真的很好奇你是否可以在一个查询中完成。
    • @ozzysong 我认为不是,因为 SQL 查询是布尔值。它们要么在结果集中包含某些内容,要么将其排除在外。当然,除非 WordPress 在 WP_Query 对象中实现了类似的功能,但他们可能会以与我的回答类似的方式来实现。
    • @ozzysong 另外,我认为这种情况很少发生(例如在一个非常新的博客上),所以如果需要执行额外的查询,这没什么大不了的。如果您有许多仅包含几篇文章的类别,那么使用标签通常是一个更好的主意。不过,这并不能解决你的问题;)
    • 感谢您的精彩解释;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多