的WordPress:只显示顶级类别
我使用这段代码:的WordPress:只显示顶级类别
$args = array(
'orderby' => 'name',
'hierarchical' => 1,
'style' => 'none',
'taxonomy' => 'category',
'hide_empty' => 0,
'depth' => 1,
'title_li' => ''
);
$categories = get_categories($args);
我所试图做的是只列出顶级类别。当我使用这个代码时,我将它们全部放在第一层。有人能帮我吗?
没有depth
论据get_categories()
,你应该尝试:
$args = array(
'orderby' => 'name',
'parent' => 0
);
parent
: (整数)仅显示直接后裔类别(即儿童专用)查明的类别它的ID。这不适用于'child_of'参数。此参数没有默认值。 [在2.8.4]
了解更多:http://codex.wordpress.org/Function_Reference/get_categories#Get_only_top_level_categories
如何仅显示一个级别的子类别? 例如:我想隐藏一级子类别的子类别 – 2014-08-12 13:00:14
感谢烧酒,它的帮助很大:) – Max 2016-04-25 14:42:48
烧酒职位是非常有帮助的,对于只得到1类一级子类别,我们应该只通过有子类别的类别ID。但是,如果子类没有任何职位则亘古不显示,但子类别的子类别包括后这么加“hide_empty” => 0,在上述条件下它看起来就像
$args = array(
'taxonomy' => 'categories',
'parent' => 7,
'hide_empty' => 0,
);
这里是我的脚本来获得最高级别循环中的类别名称。这将包括只检查了一个子类别的顶级类别,并且没有明确检查它们自己。
<?php
$categories = get_the_category();
$topcats = array();
foreach ($categories as $cat) {
if ($cat->parent != 0) $cat = get_term($cat->parent, 'category');
$topcats[$cat->term_id] = '<a href="/category/' . $cat->slug . '">' . $cat->name . '</a>';
}
echo implode(', ', $topcats);
?>
没有为get_categories没有深度参数()-http://codex.wordpress.org/Function_Reference/get_categories深度参数在wp_list_categories()中使用 - http://codex.wordpress.org/Template_Tags/wp_list_categories – McNab 2013-02-27 13:30:01