挂钩菜单取消设置条件的链接

时间:2017-10-12 10:26:45

标签: drupal menu drupal-7 hook

我在Drupal 7上遇到了一个问题。

我的主菜单包含多个链接。 使用模块menu_fields,我在菜单链接中添加了分类,我想根据所选的菜单链接更改此菜单显示。

问题是我不知道如何编写我的开发。

我在我的模块中测试了hook_menu(),hook_menu_alter(),hook_menu_alter_link(),但我写的dpm()从未出现过。

我希望是一个包含一个包含菜单项数组的param的钩子。

你有什么想法吗?

  

进度:   我设法用hook_menu_alter()显示一些内容 - 我必须清空缓存 - 但是我找不到$ items var中的主菜单。

2 个答案:

答案 0 :(得分:1)

使用mymodule_translated_menu_link_alter(&$item, $map)解决了问题。

您只需要执行if ($item['menu_name'] == 'main-menu') {}语句并在其中添加代码。

答案 1 :(得分:0)

我能想到的最佳解决方案是使用menu_tree_all_data()函数收集菜单树:

https://api.drupal.org/api/drupal/includes%21menu.inc/function/menu_tree_all_data/7.x

然后抓取树结构(recursevly)并手动生成菜单html。