在Drupal7中,我希望有一个站点,它有不同的部分,带有一个左侧导航菜单,可以根据您所在的页面进行切换。例如,我想要一个顶层的导航,它会带你到一个部分,然后在那个部分的菜单是唯一的。我假设我必须在我的template.php文件中创建一个主题函数来处理这个问题。有人能告诉我如何开始编码吗?
发布于 2011-12-05 22:15:31
我不能百分之百确定我是否理解了您的意思,但是如果我理解了,那么您可以使用菜单块模块- http://drupal.org/project/menu_block
如果你说的是级别,:
如果你有一个有多个级别的菜单,但是只想在页面上显示第二级,比如父项目有第二级,那么你可以去structure -> block -> new菜单块,然后选择你想要的菜单,从哪个菜单级别开始菜单,然后将它添加到你想要作为常规块的位置。
下面是一个例子:
<ul class="menu">
<li>Menu item 1</li>
<li>Menu item 2</li>
<ul class="menu">
<li>Menu item</li>
<li>Menu item</li>
</ul>
<li>Menu item 3</li>
<li>Menu item 4</li>
<li>Menu item 5</li>
</ul>您的主菜单将只显示第一级的菜单项。
您的菜单块将被设置为仅从第二级开始,因此如果您在菜单项2的页面上,您的菜单块将显示第二级菜单项。
如果你不是在谈论级别,那就使用:
您可以创建单独的菜单块,然后将其设置为仅显示在某些页面上,方法是转到块的可见性设置,然后键入要显示的页面的节点别名,然后从单选按钮中选择“只显示列出的页面”。
发布于 2011-12-07 02:20:33
我会使用Context来解决你的问题,而不是使用@SpaceBeers建议
另外,因为上下文是可导出的,所以您可以将它们打包到一个Feature中,将该功能提交到您的源代码库中,并将其部署到您的DEV、QA和PROD框中,而无需手动将菜单/块定位设置从一个服务器复制到另一个服务器。换句话说,从长远来看,Context +Feature解决方案将提供一个更健壮和可伸缩的解决方案。
https://stackoverflow.com/questions/8386451
复制相似问题