我正在使用get_categories()函数手动创建自己的导航菜单。我有一个名为Category的自定义分类法,我正在尝试使用get_category_link()函数为菜单中的标签返回链接。
foreach ($categories as $category) {
if ($category->parent == 0) { //Check to see it is a parent
$output .= '<li>';
$output .= '<a href="' . get_category_link($category->cat_ID) . '">' . $category->name . '</a>'; //display parent taxonomy category
}
}
但它总是返回<a href="">
。我可以成功回显$category->cat_ID
因此我知道它将ID传递给函数但我不知道为什么它会返回空白。
我错过了什么吗?是因为这些是自定义分类法吗?他们有slu ..
答案 0 :(得分:2)
对于自定义分类法,您需要这样的内容:
$tax = 'cars';
$cats = get_terms( $tax, '' );
if ($cats) {
foreach($cats as $cat) {
$output .= "<li>";
$output .= '<a href="' . esc_attr(get_term_link($cat, $tax)) . '" title="' . sprintf( __( "View all posts in %s" ), $cat->name ) . '" ' . '>' . $cat->name.'</a>';
$output .= "</li>";
}
}
虽然您可以轻松添加到脚本的顶部,以便根据需要获取所有分类的数组。