我对Wordpress Taxonomies有点问题...下面你可以看到我的自定义分类法job_keywords
的初始化。
function register_job_keywords() {
$labels = array(
[... lables here ...]
);
$args = array(
'labels' => $labels,
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_admin_column' => true,
'show_in_nav_menus' => true,
'show_tagcloud' => true,
);
register_taxonomy( 'job_keywords', array( 'job' ), $args );
}
我还将其实现为自定义帖子类型job
。
$args = array(
[...]
'taxonomies' => array( 'job_category' , 'job_keywords'),
'hierarchical' => false,
[...]
在插件初始化中,我调用了函数register_job_keywords()
,这让我看到 wp-admin 中的关键字,我可以像标签一样添加它们等所以一切都在界面上工作正常,我去我的 php 文件并显示所有的分类。所以我明白了:
Array
(
[category] => category
[post_tag] => post_tag
[nav_menu] => nav_menu
[link_category] => link_category
[post_format] => post_format
[job_category] => job_category
[job_keywords] => job_keywords
)
正如您所见,job_keywords
存在。
但如果我想使用get_terms('job_keywords')
它会返回:
Array( )
为什么会这样?
我想注意两件事。我使用print_r
来查看术语。其次,我已经在wp-admin界面中添加了一些关键字。
有什么建议吗?我希望你能帮助我:)。
答案 0 :(得分:9)
好的,我得到了答案。
get_terms( 'job_keywords', array("hide_empty" => false) );
get_terms 默认为hide_empty => true
,任何帖子都不会使用我的关键字。
来自wordpress:
默认为true。不会返回空条款,这意味着条款的条款 根据给定的分类,count为0。