我不会用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 ... 也就是说,这是我自己编造出来的,可能行不通,你应该把它作为一个概念性的例子。
供参考: