在Drupal 7中我希望有一个具有不同部分的网站,其左侧导航菜单会根据您所在的页面进行切换。例如,我想要一个顶级导航,将您带到一个部分,然后在该部分中,菜单对于它是唯一的。我假设我必须在template.php文件中创建一个主题函数来处理这个问题。有人能告诉我如何开始编码吗?
答案 0 :(得分:4)
我不是100%肯定我会关注你,但如果我这样做,你可以使用菜单栏模块 - http://drupal.org/project/menu_block
如果你在谈论关卡:
如果您有一个包含多个级别的菜单,但只想在父项目具有第二级别的页面上显示第二级别,那么您将转到结构 - >块 - >新菜单块并选择您想要的菜单,从哪个菜单级别启动菜单,然后将其添加到您想要的常规块中。
一个例子是:
<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的页面上,您的菜单块将显示第二级菜单项。
如果你不是在谈论关卡:
您可以创建单独的菜单块,然后通过转到块的可见性设置,然后键入要显示的页面的节点别名,然后选择“单选按钮。
答案 1 :(得分:0)
我没有使用@SpaceBeers建议,而是使用Context来解决您的问题:
作为一个优点,因为上下文是可导出的,您可以将它们打包成Feature,将该功能提交到源控件存储库,然后将其部署到DEV,QA和PROD框中,而无需手动复制从服务器到服务器的菜单/块定位设置。换句话说,从长远来看,Context + Features解决方案将提供更强大和可扩展的解决方案。