仅显示特定自定义 Post 类型的自定义分类法计数

Show count of Custom Taxonomy only for a specific Custom Post Type

我想显示基于特定自定义 Post 类型的自定义分类法的计数。目前,我正在使用 get_terms 列出分类法的所有术语。 分类法被多个 Post 类型使用。因此,计数器显示了每个 Post 类型的分类法的所有使用情况。

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

这是我的实际代码:

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

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

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

另一种解决方案是使用 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);

我觉得下面的link更有助于更好的理解。 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 );