帮助更改查询以排除除标准发布格式之外的所有内容

时间:2011-03-22 作者:Andrew

我觉得我已经为这个问题头痛键盘一周了。我正在尝试更改主页上的当前查询,以仅显示设置为standard 使用新帖子格式的帖子。

我到处寻找答案(包括herehere) 并尝试了我找到的所有内容,但我无法在当前查询的框架内运行它。

我的问题如下。非常感谢您的帮助。

<?php     
query_posts( array( \'post__not_in\' => $ids, \'showposts\' => 10, \'cat\' => \'-4\' ) ); ?>
<?php while (have_posts()) : the_post(); ?>
-LOOP STUFF-
  <?php the_excerpt(); ?><BR>
<?php endwhile; ?>
UPDATE - March 30: 由于我发布了这篇文章,我发现了如何使用以下代码正确查询图像帖子:

    <?php 
$args = array(
  \'post__not_in\' => $ids, 
  \'showposts\' => 10, 
  \'cat\' => \'-4,-1866,-27\',
  \'tax_query\' => array(
    array(
      \'taxonomy\' => \'post_format\',
      \'field\' => \'slug\',
      \'terms\' => \'post-format-image\'
    )
  )
);        
    query_posts( $args ); ?>
<!-- Look Stuff -->
    <?php endwhile; ?>
但我仍然需要找出相反的方法standard 职位。

Second Update - March 30: 我在多次打猎后找到了答案。显然,唯一的办法是增加以下内容:

\'运算符\'=>\'不在\',

因此,它会查找不属于image post格式的帖子。或者,我必须向terms行添加一个术语数组,这样它就不会返回任何这些格式。很奇怪,但它确实有效。

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

好吧,我在多打猎后找到了答案。显然,唯一的办法是增加以下内容:

\'operator\' => \'NOT IN\',
因此,它会查找不属于image post格式的帖子。或者,我必须向terms行添加一个术语数组,这样它就不会返回任何这些格式。很奇怪,但它确实有效。

<?php 
$args = array(
  \'post__not_in\' => $ids, 
  \'showposts\' => 10, 
  \'cat\' => \'-4,-1866,-27\',
  \'tax_query\' => array(
    array(
      \'taxonomy\' => \'post_format\',
      \'field\' => \'slug\',
      \'terms\' => \'post-format-image\',
      \'operator\' => \'NOT IN\'
    )
  )
);  
    query_posts( $args ); ?>
<!-- The Loop -->
    <?php endwhile; ?>

结束

相关推荐