我试图在自定义帖子类型(“站点”)的管理区域的概览表中列出自定义分类法(“流派”)的术语。为了实现这一点,我在我的主题函数中尝试了以下代码。php文件:
register_taxonomy(\'genre\', \'station\', array(
\'labels\' => array(
\'name\' => _x(\'Genres\', \'taxonomy general name\', \'loudfm_theme\'),
\'singular_name\' => _x(\'Genre\', \'taxonomy singular name\', \'loudfm_theme\'),
\'search_items\' => __(\'Search Genres\', \'loudfm_theme\'),
\'popular_items\' => __(\'Popular Genres\', \'loudfm_theme\'),
\'all_items\' => __(\'All Genres\', \'loudfm_theme\'),
\'parent_item\' => __(\'Parent Genre\', \'loudfm_theme\'),
\'parent_item_colon\' => __(\'Parent Genre:\', \'loudfm_theme\'),
\'edit_item\' => __(\'Edit Genre\', \'loudfm_theme\'),
\'update_item\' => __(\'Update Genre\', \'loudfm_theme\'),
\'add_new_item\' => __(\'Add New Genre\', \'loudfm_theme\'),
\'new_item_name\' => __(\'New Genre Name\', \'loudfm_theme\')
),
\'hierarchical\' => true
));
add_filter(\'manage_station_posts_columns\', \'station_edit_columns\');
add_action(\'manage_posts_custom_column\', \'station_custom_columns\');
function station_edit_columns($columns){
$columns = array(
\'cb\' => \'<input type="checkbox"/>\',
\'title\' => __(\'Station Title\', \'loudfm_theme\'),
\'description\' => __(\'Description\', \'loudfm_theme\'),
\'genre\' => __(\'Genre\', \'loudfm_theme\')
);
return $columns;
}
function station_custom_columns($column){
global $post;
switch ($column) {
case \'description\':
the_excerpt();
break;
case \'genre\':
$genre = get_terms(array(
\'taxonomy\' => \'genre\',
\'include\' => get_post_meta($post->ID, \'maingenre\', true)
));
echo \'<a href="\' . get_term_link($genre[0]) . \'" title="\' . sprintf(__(\'View all stations with the genre %s\', \'loudfm_theme\'), $genre[0]->name) . \'">\' . $genre[0]->name . \'</a>\';
}
}
在我的例子中,我不想简单地列出一个电台的所有选定流派,而只想列出id存储在自定义帖子类型的“maingree”字段中的主要流派。这就是为什么我要用
get_terms
具有“include”参数的函数。但遗憾的是,我得到了一个“无效分类法”错误(作为WP\\u错误对象)。使用
get_the_term_list
作品没有错误,但使用此功能,我无法仅显示主要流派。
谁能告诉我,为什么get_terms
不在这里工作,我怎样才能让它工作?非常感谢。