Get_Terms中的count参数对输出没有影响/不起作用

时间:2018-03-27 作者:James G.

我正在尝试获取id为的类别的子类别的类别计数$categoryId.

在里面the documentation for the term query object, 这是获取\\u terms的主要参数count 参数已列出,说明如下:

(bool)是返回术语计数(true)还是返回术语对象数组(false)。如果为true,则优先于$字段。默认值为false。

基于此,我认为下面的代码应该返回一个整数项计数。但是,它不会返回一个术语对象数组,就像我没有包含count 论点我用值1、“true”、“true”和“true”尝试了这一点。

get_terms(
    array(
        \'parent\' => $categoryId,
        \'taxonomy\' => \'category\',
        \'count\' => true
    )
);
在搜索了更多信息后,我找到了以下代码:

wp_count_terms( \'category\', array( \'parent\' => $categoryId ) );
为什么count 争论在这种情况下没有效果?这种行为是否一致?

1 个回复
SO网友:anton

不确定来自哪个版本,但count 参数不再使用。刚刚检查了WP\\u Term\\u查询类,没有发现与count 参数,但您仍然可以在此类的构造函数中找到它。要仅返回术语计数,需要设置count 对于fields 论点

get_terms(
    array(
        \'parent\' => $categoryId,
        \'taxonomy\' => \'category\',
        \'fields\' => \'count\'
    )
);
功能wp_count_terms() 就这么做吧。

function wp_count_terms( $taxonomy, $args = array() ) {
    $defaults = array(\'hide_empty\' => false);
    $args = wp_parse_args($args, $defaults);

    if ( isset($args[\'ignore_empty\']) ) {
        $args[\'hide_empty\'] = $args[\'ignore_empty\'];
        unset($args[\'ignore_empty\']);
    }

    //HERE IT SETS COUNT VALUE FOR YOU
    $args[\'fields\'] = \'count\';

    return get_terms($taxonomy, $args);
}
这不是我第一次注意到英文版的法典已经过时了。例如,西班牙法典没有“count”参数-https://codex.wordpress.org/es:Function_Reference/get_terms

结束

相关推荐

Taxonomy linked to pages

在我的产品页面中,我添加了许多自定义分类法。其中之一就是被称为“colecciones”的分类学。例如,您可以在此URL中看到:https://www.editorialufv.es/catalogo/comunicacion-clinica/ 每本书都是一个集合的一部分(西班牙语为Coleccion)。我希望产品页面中出现的链接将重定向到我对每个收藏所做的页面,而不是商店页面过滤器。在这种情况下,Coleccion被称为“relación clínica”,他的URL是:https://www.edit