首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Drupal 7自定义主菜单

Drupal 7自定义主菜单
EN

Stack Overflow用户
提问于 2011-05-13 23:37:12
回答 1查看 9.6K关注 0票数 3

我急需帮助。我正在尝试自定义Drupal 7中的主菜单(仅),使其符合我的蓝图的需要。我试图在文档中找到答案,但是没有一个简单的例子,这使它变得有点困难。

基本要求是其他菜单(导航等)不受主菜单样式的影响。

我的page.tpl.php包括以下代码:

代码语言:javascript
复制
<?php if ($main_menu): ?>
<div class="span-9" id="topmenu">
<?php print theme('links__system_main_menu', array(
'links' => $main_menu,
'attributes' => array(
'id' => 'main-menu',
'class' => array('links', 'inline', 'clearfix'),
),
)); ?>
</div>
<?php endif; ?>

产出显示:

代码语言:javascript
复制
<div class="span-9" id="topmenu"> 
<ul id="main-menu" class="links inline clearfix">
 <li class="menu-151 first"><a href="/drupal/" title="">Home</a></li> 
 <li class="menu-152"><a href="/drupal/" title="">Contact Us</a></li> 
 <li class="menu-153 last"><a href="/drupal/" title="">About Us</a></li> 
</ul>
</div>

然而,所需的输出应该如下所示:

代码语言:javascript
复制
<div class="span-9" id="topmenu">
 <div class="span-3 menu-151"><a href="/drupal/" title="">Home</a></div>
 <div class="span-3 menu-152"><a href="/drupal/" title="">Contact Us</a></div>
 <div class="span-3 menu-153 last"><a href="/drupal/" title="">About Us</a></div>
</div>
EN

回答 1

Stack Overflow用户

发布于 2011-11-22 20:22:16

可以重写主题函数以修改生成的标记。

为实现这一目标:

  1. 找到您正在调用的主题函数(应该是theme_links__system_main_menu)。
  2. 将此函数的代码复制并粘贴到自定义主题函数中(可以在phptemplate或自定义模块中完成)
  3. 自定义主题函数以使用divs而不是ul li

参见正式的Drupal文档:覆盖主题输出部分“如何更改HTML方式”

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5998793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档