get_the_category()
返回一个对象数组,分配给帖子的每个类别对应一个对象。
因此,您在代码中所做的只是访问第一个对象,索引0。
$categoriaActual = get_the_category($post->ID);
$idCategoriaActual = $categoriaActual[0]->term_id;
如果查看整个返回的数组,您将看到所有ID
print_r( $categoriaActual );
现在,实际上您只需要ID,所以:
$ca_ids_array = array();
foreach ( $categoriaActual as $ca ) {
$ca_ids_array[] = $ca->term_id
}
print_r( $ca_ids_array );
或者使用WordPress功能
wp_list_pluck()
:
$ca_ids_array = wp_list_pluck(
get_the_category(
get_the_ID()
),
\'term_id\'
);
例如,如果希望从该数组中获得逗号分隔的列表,请执行以下操作:
$ca_ids_comma_sep_list = implode( \',\', $ca_ids_array );
要输出类别列表,更容易使用
wp_list_categories
, 返回格式化的结果。