Wordpress通过一个查询从多个类别中获取多个帖子

时间:2013-11-25 11:57:15

标签: php sql database wordpress

为客户使用wordpress(我不会过分明智)。

在他们的主页上,我想获得4个不同类别中每个类别的最新4个帖​​子,然后我希望获得3个最新的帖子,这些帖子是任何类别的最新帖子,目前上面没有使用,其次是5个最多的帖子过去两周内的网页浏览量。

这一切都很简单但是使用wordpress get_posts需要对数据库进行6次不同的调用,这可以用一个来完成吗?

程序:

  • 从NEWS类别中获取4条最新帖子
  • 从POLITICS类别获得4个晚期帖子,这些帖子尚未从前四个中获取(帖子可能属于两个类别)
  • 从类别FEATURES中获取4条尚未提取的最新帖子
  • 从类别COMMENT ...等获得4条最新帖子。
  • 从任何尚未提取的类别中获取3条最新帖子
  • 获取5个页面浏览次数最多的帖子(存储在名为meta-page-views的元数据中)尚未提取的帖子

如果没有多次查询,这是否可行。

谢谢,

1 个答案:

答案 0 :(得分:1)

在使用常规wordpress功能的一次通话中无法执行此操作。在一个查询中可能有不同的类别,但在一个查询中不能有不同的排序顺序。

如果你真的必须使用一个查询,你可以提取最新的100个帖子,将它们存储在一个数组中,然后使用PHP对结果进行排序和过滤到你的类别。但是,这对页面视图不起作用。此外,您最近100个帖子中尚未发布的类别也不会显示在您的网页上。

我没有看到使用一个查询的重点,因为它只会产生问题。即使是最流行的wordpress主题也不会这样做。

如果您的客户担心服务器负载,您应该与他们讨论缓存问题。