仅显示特定自定义帖子类型的自定义分类的计数

时间:2017-12-07 15:54:59

标签: php wordpress custom-post-type custom-taxonomy

我想根据特定的自定义帖子类型显示自定义分类的计数。目前,我正在使用get_terms列出分类标准的所有条款。 分类标准由多个邮政类型使用。因此,计数器显示每个帖子类型的分类法的所有用法。

有没有办法限制单个帖子类型的计数?

这是我的实际代码:

get_terms(array(
    'taxonomy'      => 'tax',
    'hide_empty'    => true,
    'orderby'       => 'count',
    'order'         => 'DESC',
    'number'        => '10',
));

foreach内,我正在使用term->count来显示使用率计数器。

2 个答案:

答案 0 :(得分:4)

我不建议使用get_terms,因为它会返回分类法的所有术语,而不是与帖子相关的所有术语。

另一种解决方案是使用get_posts,更多信息请点击https://developer.wordpress.org/reference/functions/get_posts/

$my_posts = get_posts(array(
  'post_type' => 'post', //post type
  'numberposts' => -1,
  'tax_query' => array(
    array(
      'taxonomy' => 'tax', //taxonomy name
      'field' => 'id', //field to get
      'terms' => 1, //term id
    )
  )
));

然后您可以计算返回的帖子数:

$count = count($my_posts);

答案 1 :(得分:2)

我认为下面的链接对更好地理解有帮助。 Link

这是为您服务的代码。

$args = array(
    'post_type'      => 'Your_custom_post_type',//Your custom post type here.
    'tax_query'      => array(
        array(
            'taxonomy' => 'Your_taxonomy',//Your taxonomy is here.
            'field' => 'slug',
        )
    )
);

现在我们print_r$args可以更好地理解我们所得到的。

_e('<pre>');
print_r($args);
_e('</pre>');

只需要查询

$your_query = new WP_Query( $args );