get_the_catgory()
返回分配给帖子的类别对象数组。您正在尝试将结果用作字符串。如果启用了调试,则会收到与此相关的错误。
您要么需要遍历数组并分别处理每个类别,要么可以直接引用它们,如get_the_category()[0]
将返回第一个类别对象
假设您只想显示第一个类别,然后显示以下行
$html .= \'<span class="item-sub-aut"><a href="\'.$subaut.\'" title="\'.get_category_link().\'">\'.get_category_link().\'</a></span>\';
将成为
$html .= \'<span class="item-sub-aut"><a href="\'. esc_url( get_category_link ( $subaut[0] ) ) .\'" title="\'. $subaut[0]->name.\'">\' . $subaut[0]->name . \'</a></span>\';
编辑如果需要显示用逗号分隔的所有类别,可以执行以下操作
$subaut = get_the_category();
foreach ( $subaut as $cat )
$array[] = \'<span class="item-sub-aut"><a href="\'. esc_url( get_category_link ( $cat ) ) .\'" title="\'. $cat->name.\'">\' . $cat->name . \'</a></span>\';
$html .= implode( \', \', $array );