这是我为wordpress主题中的菜单和子菜单编写的服装功能,但是在我测试之后,当我点击子菜单时子菜单消失了,因为wordpress没有将类别与子类别分开,所以参数为它们是“cat”,这意味着当我点击一个子菜单时,创建子菜单的函数会检查 url 中的 cat=id 是否有子类别,但它没有,因为它是一个子类别,我是 wordpress 的新手我不知道该如何处理:
function costume_menu() {
$categories = get_categories('hide_empty=0&style=none&parent=0');
foreach ($categories as $category) {
(is_category($category->term_id)) ? $active = 'class="active_menu"' : $active = '';
$nav = '<li>';
$nav .= '<a '.$active.'href="'.get_category_link($category->term_id).'">'.strtoupper($category->cat_name).'</a>';
$nav .= '</li>';
echo $nav;
}
}
function costume_submenu($cat) {
$categories = get_categories("child_of=$cat&hide_empty=0");
foreach ($categories as $category) {
(is_category($category->term_id)) ? $active = 'class="active_menu"' : $active = '';
$nav = '<li>';
$nav .= '<a '.$active.'href="'.get_category_link($category->term_id).'">'.strtoupper($category->cat_name).'</a>';
$nav .= '</li>';
echo $nav;
}
}
最佳答案
您希望您的菜单看起来像什么?
- 父类别 a(当前)所以显示全部
- 子类别 a(当前)所以显示全部
- 子子猫
- 子类别 a(当前)所以显示全部
- 父类别 b
- 父类c
- 父类别d
如果这是最终结果,那么我们需要的是
- 从 URL 中获取类别参数
- 实现一个递归函数来遍历所有类别。
- 重要的是,我们还需要获取该类别的后代,以便能够判断是否 该菜单应显示其子项或子项的子项是否已被 选中。
如果您愿意,可以遵循更准确的细节。
关于php - 在 wordpress 的子菜单中单击时子菜单消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9763497/