查询给定分类中的所有帖子

时间:2012-11-20 作者:Francesco

当然这很简单,但我不知道怎么做。

我需要查询所有具有特定分类集的帖子。像这样:

$query03 = array( 
\'numberposts\' => 5, 
\'post_type\' => array(
    \'video\'
    ), 
\'tax_query\' => array(
        array(
            \'taxonomy\' => \'product\',
            \'field\' => \'slug\',
            \'terms\' => **all_the_terms_in_taxonomy**
        )
    ) 
);
我要设置terms 输入通配符。我知道我可以填充terms 用数组填充,但列表非常长,我担心查询的权重。

1 个回复
SO网友:Chip Bennett

您是否尝试过简单地省略\'terms\' 来自的键\'tax_query\' 大堆

$query03 = array( 
    \'numberposts\' => 5, 
    \'post_type\' => array(
        \'video\'
    ), 
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'product\',
            \'field\' => \'slug\'
        )
    ) 
);
或者,我也不会真正担心查询的权重。无论查询参数有多复杂,或查询参数数组有多大,结果查询都将是它将是什么。因此,我建议通过get_terms:

<?php get_terms( $taxonomy, $args ); ?>
通过设置\'fields\'\'ids\', 将返回术语ID数组,而不是术语对象数组):

$query03 = array( 
    \'numberposts\' => 5, 
    \'post_type\' => array(
        \'video\'
    ), 
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'product\',
            \'field\' => \'id\',
            \'terms\' => get_terms( \'product\', array( \'fields\' => \'ids\' ) )
        )
    ) 
);
编辑备选方案tax_query\', 使用术语段塞代替ID:

    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'product\',
            \'field\' => \'slug\',
            \'terms\' => get_terms( \'product\', array( \'fields\' => \'names\' ) )
        )
    ) 

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post