创建一个按最新评论排序的帖子循环

时间:2010-09-27 作者:matt

使用query\\u posts,我如何对帖子列表进行排序,以便最新评论的帖子位于顶部?

我在寻找类似于当你按“活动”排序时,SE上的问题是如何排序的

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

我不会用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() ...
基本上,您是根据与comments表中的数据相关的特定标准来选择帖子的。使用直接查询需要对SQL语句和WP数据库结构有一定深度的了解,不过。。。因此,这通常不是我的第一个建议,但对你的情况应该有效。

Just remember that the code above is pseudo-code ... 也就是说,这是我自己编造出来的,可能行不通,你应该把它作为一个概念性的例子。

供参考:

结束

相关推荐