0

我正在使用以下句子来查询一些帖子:

query_posts('post_type=page&posts_per_page=2&meta_key=category_news&meta_value=ht_news&lang=en');

问题是我需要能够防止这样的查询在其结果中获得某个 postID,那么我该如何添加这样的代码?

在正常的 SQL 查询中,它可能是WHERE postID NOT IN (12, 120, 150)

谢谢。

4

2 回答 2

0

不,但是 WP_Query 具有post__not_in您可以使用的参数。

来自Codex的 WP_Query 参数:

p (int) - use post id.
name (string) - use post slug.
page_id (int) - use page id.
pagename (string) - use page slug.
post_parent (int) - use page id. Return just the child Pages.
post__in (array) - use post ids. Specify posts to retrieve.
post__not_in (array) - use post ids. Specify post NOT to retrieve. 

您可以查看WordPress Answers的这个问题,以获取有关您需要哪种类型的查询的更多信息。Rarst answer可能是我见过的关于在 Wordpress 中查询帖子的三种方法的最佳解释。

于 2012-10-10T11:25:53.517 回答
0

用于排除exclude您在查询中指定的 PostID。

query_posts('
     post_type=page
     &posts_per_page=2 
     &meta_key=category_news
     &meta_value=ht_news
     &lang=en
     &exclude=1,2,3,4,5'
 );
于 2012-10-10T12:19:02.177 回答