登录 注册

登录

问题 请教使用中的一个问题。关于菜单模块开始层级的。

更多
2012年08月05日 10:41 #1 作者: bxwwwxd
我把菜单模块中开始菜单层级设定为2,并且指定在全部页面显示。

出现了如下问题:
所有页面均不显示此模块,除非通过外部链接进入此菜单中的一项,模块才显示。

将开始菜单层级恢复为1,所有页面恢复正常显示。
我全新安装 Joomla 2.5.6 问题依然存在。

不知是不是Joomla设计时的一个缺陷,还是特意设计成这样,还是我是特例。

登录 或者   注册一个会员帐号 来参与讨论

更多
2012年08月05日 11:01 #2 作者: Joomla之门
菜单的“开始层级”一般是在菜单模块参数中设置的。这个层级是指该菜单下的子菜单项目。你确定你的菜单上有超过2级子菜单项目?

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2012年08月05日 12:17 #3 作者: bxwwwxd
对我在模块中设置的,并且已经有好多级子菜单。未排除时后期操作的影响,我以全新安装Joomla并用示例文件做测试。
我把About Joomla!菜单(含有多机子菜单)开始层级设定为2
结果所有页面都不显示了

但是仍然会出现我上出的问题。

登录 或者   注册一个会员帐号 来参与讨论

更多
2012年08月06日 03:55 - 2012年08月06日 04:07 #4 作者: Joomla之门
如果你确定你的菜单本身已有多级,那么这两个参数的用法是这样的:

首先要明白,使用这两个参数的意义在于“创建 split menu (分体菜单)”,意思是:主导航菜单只显示一级(顶级),当点击主导航菜单上某个菜单项目之后,在副菜单(分体菜单,一般放在侧边栏)上自动显示主导航菜单上当前活动项目的子菜单项目。

如果你没有这方面的需求,或者你的主导航菜单已经支持多级下拉菜单,你就没必要去设置“开始层级”和“结束层级”这两个参数,使用默认设置就可以。

如果你有这个需要,那么设置方法如下:

1、首先确保你的菜单系统已经具备了多级。
2、将你的主导航菜单模块发布好(一般都在顶部横向模块位置上),这个模块的“开始层级”和“结束层级”都是 1
3、复制这个模块,将这个菜单模块发布到侧边栏,“开始层级”设为 2,“结束层级”设为 3 (取决于你的子菜单项目究竟有多少级)。

最终效果是,当你点击顶部导航菜单上的某个菜单项目,侧边栏的副菜单上就自动显示该项目下的所有子菜单项目。你点击副导航菜单上的项目时,还能继续保持主导航菜单上那个上级菜单项目处于“激活”状态(高亮显示)。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!
最后修改: 2012年08月06日 04:07 由 Joomla之门.

登录 或者   注册一个会员帐号 来参与讨论

更多
2012年08月06日 07:34 #5 作者: bxwwwxd
以前主导航栏不支持多级下拉。所以我用了分体菜单。不过我的设置稍微复杂了。主导航开始层级1,结束层级1,然后分体菜单都设置为主导航菜单的子菜单的别名。如果用你的方法设置,那分体菜单中是不是就会显示出其他第一层级的子菜单了呢?


不过这回我想实现的是另外一个功能。主导航有多级下拉菜单功能。但是其中一个1级菜单项子菜单层级比较繁琐且因为具体内容原因,我希望它不显示子菜单,希望子菜单通过分体菜单实现,因此我按如下设置:
- 先创立一个菜单(作为竖状导航菜单),树状导航的第一级名称设为如“照片”(别名photos),其它分类项目都为其子菜单(这样SEF可以显示为:网 址/photos/子菜单类别项目)
- 把主导航的1级菜单——“照片”设为“菜单别名”指向树状菜单的子菜单中的一项(或一级菜单也可,一级菜单可以做一个导航页面)


如上设置一切正常,也可实现我所需的功能了,但是出现了一个看似Joomla程序漏洞的问题,如果如上开始层级不为1的菜单,即便设定为在全部页面显示,它也是不能显示,除非已经激活它其中一项(处于高亮)。暂时没有影响到我的使用,只是怕今后需要的时候,比如我需要把这个树状菜单在全部页面显示,[那么我只能在创建一个菜单一项一项地别名指向。(打这段文字时想到的解决办法,虽然可以解决,但感觉上还是Joomla的一个小漏洞,还是反映下)]
因我觉得模块分配机制已经很完善了,Joomla不应或不会特地设计成这样。

登录 或者   注册一个会员帐号 来参与讨论

更多
2012年08月06日 11:04 #6 作者: Joomla之门
你上面的描述看得我有点晕。我很可能还没理解。我按照我的理解来说一下:

一旦要使用“分体菜单”(split menu),它必然是针对整个菜单的全部一级项目,不能单独针对其中一个一级项目。

如果非要实现你所说的那种“一个顶级项目使用分体菜单,其它顶级项目使用下拉菜单”,那么也能实现,通过菜单复制、按范围发布、菜单别名映射等等,那就太复杂了。实在没必要费这个脑筋。

我觉得就用下拉菜单实现,如果 Photos 那个菜单的子菜单级数比较多,可以应用一次“菜单分栏”。二级菜单做成多栏式,每一栏又展示其下级(第3级了)菜单项目。这样减少了用户点击次数,比较直观。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论