使用query_posts,我如何订购帖子列表,以便最新评论的帖子列表?

我正在寻找类似于“主动”排序时SE上的问题的类似内容。

有帮助吗?

解决方案

我不会使用 query_posts(). 。该特定功能是为了对特定查询进行更改...并且它足够有限,您无法获得所需的自定义功能。

相反,我会使用自定义查询。您要做的是查询批准的评论,按其帖子/批准日期排序,并将其与数据库中的帖子一起加入。如果帖子没有任何注释,它将根据此条件自动将其滤除。

一个 很简单 伪代码示例:

$qstr = 'SELECT * FROM wp_posts ON (wp_posts.post_id = wp_commnets.comment_post_id) WHERE wp_comments.comment_approved='approved' ORDER BY wp_comments.comment_date';
$my_query = new WP_Query($qstr);

while($my_query->have_posts() ...

基本上,您正在根据评论表中与数据相关的特定标准选择帖子。不过,使用直接查询需要有关SQL语句和WP数据库结构的一定深度知识,因此通常不是我的第一个建议,而应在您的情况下使用。

只需记住,上面的代码是伪代码 ...这意味着我将其从头顶上弄清,它可能不起作用,您只能将其用作概念示例。

以供参考:

许可以下: CC-BY-SA归因
scroll top