You are here

使用menu.module

启用Drupal的菜单模块,就可以为管理员提供一个方便的用户界面,来定制已有的菜单,比如导航菜单或者一级/二级链接菜单,或者来添加新菜单。当位于includes/menu.inc中的menu_rebuild()函数运行时,表示菜单树的数据结构将被存储在数据库中。当你启用模块时,当你禁用模块时,或者当其它的一些能够影响菜单树结构的事情发生时,都会运行menu_rebuild()函数。数据将被保存到数据库的menu_router表中,而关于链接的信息则被保存到了menu_links表中。

 
    在为一个页面构建链接的流程期间,Drupal首先会基于从模块的菜单钩子实现中获取的路径信息和从menu_router表中获取的路径信息,来构建菜单树;接着,它会使用来自于数据库的菜单信息对前面的信息进行覆盖。这样一来,你就可以使用menu.module来修改菜单树的父亲、路径、标题、和描述了----实际上你并没有真正的修改底层的菜单树,而是创建了一些数据来覆盖在菜单树的上面。
 
注意 菜单树类型,比如MENU_CALLBACK 或者DEFAULT_LOCAL_TASK,在数据库中是以数字的形式存储的。
 
    menu.module还在节点表单上加了一部分,用来将当前文章添加为一个菜单项。
老葛的Drupal培训班 Think in Drupal
 

Drupal版本: