Drupal 7自定义导航菜单

Drupal 7自定义导航菜单,drupal,menu,navigation,Drupal,Menu,Navigation,我们正试图让Drupal允许我们根据与当前项的关系在菜单项上放置自定义css类。通过这种方式,我们可以使用css隐藏和设置项目样式,这样菜单就不会那么大 我们希望能够区分: 第一级-始终显示 非活动轨迹的祖先-始终隐藏 活动巡回演出 当前项目-显示 兄弟姐妹-表演 儿童节目 这些规则是: 一般导航规则 导航时,您将始终看到“级别1”导航。 您将看到您所在页面的直系后代(面包屑)。 您将看到您所在页面的同级。 您可以看到您所在页面的子项。 注意:这不是手风琴导航。子级别仅在页面上时可见 1级 您只

我们正试图让Drupal允许我们根据与当前项的关系在菜单项上放置自定义css类。通过这种方式,我们可以使用css隐藏和设置项目样式,这样菜单就不会那么大

我们希望能够区分: 第一级-始终显示 非活动轨迹的祖先-始终隐藏 活动巡回演出 当前项目-显示 兄弟姐妹-表演 儿童节目

这些规则是:

一般导航规则
导航时,您将始终看到“级别1”导航。
您将看到您所在页面的直系后代(面包屑)。 您将看到您所在页面的同级。 您可以看到您所在页面的子项。 注意:这不是手风琴导航。子级别仅在页面上时可见

1级 您只需看到主页和顶级导航。 主页链接不显示

第2级 关闭主页后,其链接将与“级别1”导航以及您所在页面的直接子页面一起出现

第3级 现在,您可以看到所有级别1、所有级别2(同级)以及您所在页面的子级(级别3)。这会让你很好地了解一旦深入页面,你通常会在一个站点上看到多少导航

第4级 您将一如既往地看到主页和级别1。您还可以看到您所在页面的祖先。由于您处于级别3,因此可以看到级别3的所有同级以及您所在页面的子级(级别4)

第5级 您将一如既往地看到主页和级别1。您还可以看到您所在页面的祖先。由于您处于第4级,因此可以看到第4级的所有同级以及您所在页面的子级(第5级)

更新:

我基本上能够完成我所需要的

function USZ_menu_link($variables) {
    $element = $variables['element'];
    $depth = sizeof(menu_get_active_trail()) -1; 
    static $item_id = 0;


    if(!$element['#below'] && !$element['#active_trail'] && $element['#original_link']['depth'] != "1" && $element['#original_link']['depth'] < $depth){
        $element['#attributes']['class'][] = 'hideme';      
    }
}
函数USZ\u菜单链接($variables){
$element=$variables['element'];
$depth=sizeof(menu\u get\u active\u trail())-1;
静态$item_id=0;
如果(!$element['#低于']&&&$element['#活动#跟踪]&&&$element['#原始#链接]['depth']!=“1”&$element['原始#链接]['depth']<$depth){
$element['#attributes']['class'][]='hideme';
}
}

无法理解您需要的所有内容,但我可以推荐,并且

这些模块将通过菜单帮助您完成大部分任务。上下文模块可以向菜单项添加类,菜单块使用自定义设置扩展菜单块(级别,包括树中的paren项,还具有上下文集成),菜单位置有助于为不同条件创建规则,并提供API来处理自定义模块中的菜单


这只是一个观点,我认为了解这些模块的功能会有所帮助。

谢谢。我能得到我所需要的大部分东西。