$tabs 变量通常会填充类型为 的菜单条目MENU_LOCAL_TASK
。
看看菜单系统,尤其是hook_menu()
了解基本概念。它归结为回调函数到路径的映射。如果 URL 与定义的路径匹配hook_menu
(可以包含占位符!),则为该路径注册的回调函数将被调用以生成该 URL 的内容。
项目的“类型”hook_menu
定义了路径/回调组合在系统中的表示方式。它可以是MENU_CALLBACK
,这意味着只是注册的路径/回调组合,但没有相应的“真实”菜单条目。A MENU_NORMAL_ITEM
, 将是相同的,但具有“标准”菜单条目,例如在导航菜单中。AMENU_LOCAL_TASK
相同,但相应的菜单项通常显示在 $tabs 中,而不是菜单中。
所有MENU_LOCAL_TASK
共享相同基本路径的最终都将成为一组选项卡。所以如果你有这样的路径:
- 一些/路径/tab1
- 一些/路径/tab2
- 一些/路径/tab3
并且所有这些定义为MENU_LOCAL_TASK
,您会在它们所代表的每一页上看到它们各自的一个选项卡。
因此,要找到您需要修改/增强的地方,您应该在代码库中搜索所有hook_menu()
定义这些选项卡显示路径的实现。请注意,它们不需要全部定义在同一个地方,而是可以来自hook_menu
不同模块中的不同实现。比您需要为要添加的选项卡添加菜单定义,将相关路径映射到回调函数。回调函数将返回用户在单击选项卡时应该看到的页面内容。