如何隐藏特定菜单的子菜单(下拉菜单)。比如我有3个菜单;足球,篮球和足球。当我在足球菜单上盘旋时,我看到名为Messi,Ronaldo和Neymar的文章下降。我徘徊在篮球菜单上,我看到勒布朗,杜兰特和科比。当我将鼠标悬停在足球菜单上时,我会看到RG3,威尔逊和曼宁。我希望得到它,当我将鼠标悬停在足球菜单上时,我无法在下拉菜单中看到任何文章。我想把它仅仅用于足球菜单,但是其他人在悬停时应该仍然有下拉菜单。
答案 0 :(得分:2)
如果您使用的是mod_menu
模块,则必须为templates/your_template/html/mod_menu/default.php
创建模板覆盖,并在以下位置添加此代码:foreach ($list as $i => &$item) { ... }
$parent_id = 779;
if($item->id == $parent_id) { $item->deeper = null; }
$this_parent = $item->parent_id;
while ($this_parent != 1) {
if($this_parent == $parent_id) continue 2;
foreach ($list as $parent_search) {
if($parent_search->id == $this_parent) {
$this_parent = $parent_search->parent_id;
}
}
}
因此,它将检查父项是否具有指定的id并跳过所有子项。
您还可以使用in_array()
为多个ID扩展它。
参考:in_array()
答案 1 :(得分:0)
您可以在模块管理器中为该特定菜单执行此操作。 “开始等级”和“结束等级”有一个下拉列表。只需将它们都设置为“1”,只显示顶级项目。