Drupal 6x - 主要链接jquery手风琴菜单

时间:2010-10-18 20:34:31

标签: drupal drupal-6 drupal-theming

我正在尝试在jquery手风琴菜单(link text)中转换主链接菜单块。 我已经测试了Drupal的Accordion Menu模块,但它对我不起作用。

对于我的主链接块我会有或多或少的这个html输出:

    <ul id="accordion">  
             <li>  
               <a href="#recent" class="heading">Recent Entries</a>  
                 <ul id="recent">  
                     <li><span class="date">01.19.2009</span> <a href="#">Recent Entry Title</a></li>  
                     <li><span class="date">01.15.2009</span> <a href="#">Recent Entry Title</a></li>  
                     <li><span class="date">01.13.2009</span> <a href="#">Recent Entry Title</a></li>  
                     <li><span class="date">01.11.2009</span> <a href="#">Recent Entry Title</a></li>  
                     <li><span class="date">01.10.2009</span> <a href="#">Recent Entry Title</a></li>  
                 </ul>  
             </li>

             <li>  
               <a href="#recent" class="heading">Recent Entries</a>  
             </li>  
             <li>  
                 <a href="#popular" class="heading">Popular Entries</a>  
                 <ul id="popular">  
                     <li><span class="date">08.16.2008</span> <a href="#">Popular Entry Title</a></li>  
                     <li><span class="date">06.12.2008</span> <a href="#">Popular Entry Title</a></li>  
                     <li><span class="date">04.12.2008</span> <a href="#">Popular Entry Title</a></li>  
                     <li><span class="date">06.12.2007</span> <a href="#">Popular Entry Title</a></li>  
                     <li><span class="date">03.12.2007</span> <a href="#">Popular Entry Title</a></li>  
                 </ul>  
             </li>  
             <li>  
                 <a href="#categories" class="heading">Categories</a>  
                 <ul id="categories">  
                     <li><a href="#">Category Name</a> <span class="count">7</span></li>  
                     <li><a href="#">Category Name</a> <span class="count">4</span></li>  
                     <li><a href="#">Category Name</a> <span class="count">15</span></li>  
                     <li><a href="#">Category Name</a> <span class="count">29</span></li>  
                     <li><a href="#">Category Name</a> <span class="count">8</span></li>  
                 </ul>  
             </li>

        </ul>

我与孩子有一些主要联系:

  • 领土
    • 地图
  • 产品
    • 眼镜
  • 联系人

Devel Themer Module说我必须覆盖“theme_menu_item”功能,但我不知道如何继续。我是否可以在“template.php”文件中仅编辑此功能?

我确信jQuery和jQuery UI运行良好,因为我已经使用page.tpl.php中的上述代码对它们进行了测试。

有什么想法吗? 谢谢 再见

EDIT

我已经阅读了很多文档和drupal论坛,但我找不到类似的请求。我只需编辑主要链接html而无需使用此代码将id标记添加到ul

function basic_menu_tree($tree) {
  return '<ul id="accordion" class="menu">'. $tree .'</ul>';

}

问题来自于孩子ul,实际上上面的函数也添加了id =“accordion”标签也对于孩子ul对jquery脚本有不良影响

我想只自定义Primary Link菜单块html,我不敢相信没有解决方案...... 感谢

更新

我已经解决了在template.php文件中使用上面的函数,并通过jquery脚本将头类添加到主链接父类来设置jquery ui accordion header options(http://jqueryui.com/demos/accordion/#option-报头)!

再见

2 个答案:

答案 0 :(得分:0)

覆盖主题功能是主题中最基本的功能。

简短版本是,如果您创建名为[theme_name]_menu_item的函数,该函数将用于生成html而不是默认值:theme_menu_item。所以,这可以在template.php

中完成

请注意,这些更改会影响所有菜单项,而不仅仅是主链接菜单中的项目。

Long version

答案 1 :(得分:0)

将jquery手风琴附加到标准主菜单输出有什么问题?这就是你需要的一切。

相关问题