如何使用自定义标记和层次结构输出类别?
How to output categories with custom markup and hierarchy?
On this SO question 我找到了以下内容
$args = array(
'orderby' => 'name',
'order' => 'ASC',
'number' => 20 // how many categories
);
$categories = get_categories($args);
foreach($categories as $category) {
echo '<li><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a></li>›';
}
这是一个步骤,但它并没有创建层次结构。我读过 get categories in wp codex 但我无法理解。
我的结构是:
CAT 1
cat 1.1
cat 1.2
CAT 2
cat 2.1
cat 2.2
试过了,但输出只是一个没有层次结构的项目列表:
public function walk_taxonomy( $type = "checkbox", $args = array() ) {
$args['walker'] = new Search_Filter_Taxonomy_Walker($type, $args['name']);
$output = $argo = array(
'hierarchical' => 1
);
$categories = get_categories($argo);
foreach($categories as $category) {
echo '<li><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a></li>›';
}
if ( $output )
return $output;
}
您必须将此添加到参数中:
'hierarchical' => 1,
在你的 foreach 中你必须检查 $category->parent 是否为空.. 如果不是空缩进通过添加空格或应用 class 到你的 li 就像
<li class="indent">
On this SO question 我找到了以下内容
$args = array(
'orderby' => 'name',
'order' => 'ASC',
'number' => 20 // how many categories
);
$categories = get_categories($args);
foreach($categories as $category) {
echo '<li><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a></li>›';
}
这是一个步骤,但它并没有创建层次结构。我读过 get categories in wp codex 但我无法理解。
我的结构是:
CAT 1
cat 1.1
cat 1.2
CAT 2
cat 2.1
cat 2.2
试过了,但输出只是一个没有层次结构的项目列表:
public function walk_taxonomy( $type = "checkbox", $args = array() ) {
$args['walker'] = new Search_Filter_Taxonomy_Walker($type, $args['name']);
$output = $argo = array(
'hierarchical' => 1
);
$categories = get_categories($argo);
foreach($categories as $category) {
echo '<li><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a></li>›';
}
if ( $output )
return $output;
}
您必须将此添加到参数中:
'hierarchical' => 1,
在你的 foreach 中你必须检查 $category->parent 是否为空.. 如果不是空缩进通过添加空格或应用 class 到你的 li 就像
<li class="indent">