我对自定义帖子类型和自定义分类法一无所知,所以请耐心等待。我正在尝试为自定义分类法创建面包屑导航project-category
在自定义帖子类型中projects
. 基本上,我需要它这样工作:
自定义职位类型(>);自定义分类级别1>自定义分类级别2>自定义分类级别3>等等。
每个标题都需要链接到相应的页面。我有这种工作方式,但它不是很动态,它只链接了三个级别的导航。以下是我的代码:
<ul>
<li><a href="/projects">Projects</a></li>
<?
$term = get_term_by("slug", get_query_var("term"), get_query_var("taxonomy") );
$parent = get_term($term->parent, get_query_var("taxonomy"));
if ($parent->name != "") {
echo "<li><a href=\\"/project-category/" . $parent->slug . "\\">" . $parent->name . "</a></li>";
}
if (is_tax("project-category")) {
$term = get_term_by("slug", get_query_var("term"), get_query_var("taxonomy"));
$tax_term_breadcrumb_taxonomy_slug = $term->taxonomy;
echo "<li><a href=\\"/project-category/" . $term->slug . "\\">" . $term->name . "</a></li>";
}
?>
</ul>
到第二个级别,这项工作目前正在进行,如下所示:自定义帖子类型>分类级别1>分类级别2
但如果我进入第三个层次,结果是:
自定义帖子类型>分类级别2>分类级别3
我走得越深,层次越深。我知道问题是我只是在检查一位家长,但我不知道如何检查所有可能的家长。
更新:我设法让它工作得更好一些,但它正在向后列出事情。以下是我的更新代码:
<ul>
<li><a href="<? echo home_url(); ?>/projects">Projects</a></li>
<?
$term = get_term_by("slug", get_query_var("term"), get_query_var("taxonomy") );
$parent = get_term($term->parent, get_query_var("taxonomy"));
while ($parent->term_id) {
echo "<li><a href=\\"" . home_url() . "/project-category/" . $parent->slug . "\\">" . $parent->name . "</a></li>";
$parent = get_term($parent->parent, get_query_var("taxonomy"));
}
echo "<li><a href=\\"" . home_url() . "/project-category/" . $term->slug . "\\">" . $term->name . "</a></li>";
?>
</ul>
它没有列出自定义帖子类型>分类级别1>分类级别2>分类级别3,而是列出自定义帖子类型>分类级别2>分类级别1>分类级别3。这与while循环有关,但我似乎无法逆转它。谢谢