TAX_QUERY:当我想要拥有所有术语时,传递什么?

时间:2014-01-13 作者:mathiregister

$args = array(
    \'post_type\' => \'wr_event\',
    \'posts_per_page\' => -1,
    \'meta_key\' => \'event_date\',
    \'orderby\' => \'meta_value_num\',
    \'order\' => $order,
    \'meta_value\' => $yesterday,
    \'meta_compare\' => $compare,
    if ( is_null($cat) )
        \'tax_query\' => array(
            array(
                \'taxonomy\'  => \'event_type\',
                \'field\'     => \'slug\',
                \'terms\'     => $cat,
                \'operator\'  => \'IN\'
                ),
           )
);
我很困惑,我应该通过什么才能从所有条款中获得所有帖子?现在我可以通过sports 为了获得所有体育赛事,但我如何获得所有赛事?我知道我可以摆脱tax_query() 然而,我用它作为参数,在这里我可以传递一定的税,如果不是,我想要所有的帖子。

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

简单地省略(或不添加)tax_query 部分参数。

$args = array(
    \'post_type\' => \'wr_event\',
    \'posts_per_page\' => -1,
    \'meta_key\' => \'event_date\',
    \'orderby\' => \'meta_value_num\',
    \'order\' => $order,
    \'meta_value\' => $yesterday,
    \'meta_compare\' => $compare,
);

if ( ! is_null($cat) )
  $args[\'tax_query\'] =array(
            array(
                \'taxonomy\'  => \'event_type\',
                \'field\'     => \'slug\',
                \'terms\'     => $cat,
                \'operator\'  => \'IN\'
                ),
           );

结束

相关推荐

GET_TERMS函数不返回任何内容

这让我困惑了好几天,如果有任何帮助,我将不胜感激。我无法获取函数get_terms 归还任何东西。我在中尝试了以下代码index.php, single.php 和page.php, 在循环内部和外部,默认的二十个三十主题以及我的自定义主题,不返回任何类别术语。我已经创建了10个测试类别术语,并将它们应用于不同的测试帖子,但仍然一无所获。它在现场或当地开发现场不起作用。我还尝试通过转到永久链接设置页面并重新保存来刷新重写规则,只是想看看这是否有帮助。在网上研究和发现任何类似的问题都有相同的答案:添加hid