如何更改 hook_menu_link_alter 中的自定义菜单?
我使用下一个代码:
function MY_MODULE_menu_link_alter(&$item) {
// here some code
}
此功能不适用于在管理面板 (/admin/structure/menu/add) 中创建的菜单。
但是对模块 admin_menu (/admin/structure/menu/manage/management) 创建的菜单正常工作。
哪里有问题?
hook_menu_alter() -> 在 hook_menu 被调用后改变保存到 {menu_router} 表的数据。所以通过使用这个钩子,你可以改变 -
access_callback、access_arguments、page_callback、page_arguments、delivery_callback、title、title_callback、title_arguments、theme_callback等。
hook_menu_link_alter() -> 更改保存到 {menu_links} 表的数据。所以通过使用这个钩子,你可以改变 -
链接路径、路由器路径、隐藏、链接标题等。
使用hook_menu_alter ()。在调用hook_menu后,此挂钩会更改保存到menu_router
表中的数据。