2013-08-26 56 views
0

如何改變hook_menu_link_alter中的自定義菜單?
我用下面的代碼:hook_menu_alter或者hook_menu_link_alter?

function MY_MODULE_menu_link_alter(&$item) { 
    // here some code 
} 

此功能無法正常工作時在管理面板中創建菜單(/管理/結構/菜單/添加)。
但正常工作由模塊admin_menu(/管理/結構/菜單/管理/管理)創建的菜單。
哪裏有問題?

回答

1

使用hook_menu_alter()。在調用hook_menu後,該掛鉤會將保存的數據更改爲menu_router表。

+0

function custom_menu_menu_alter(&$ items){ \t $ items ['node/2'] ['title'] ='已更改標題'; } 鏈路都沒有改變節點與NID 2 =( –

+0

確切位置在哪裏,你想顯示「更改標題」?在菜單鏈接或節點頁面?! –

+0

在菜單鏈接。我在頁腳菜單,需要有通過鉤子更改標題和路徑 –

5

hook_menu_alter() - >在hook_menu被調用後,改變保存到{menu_router}表中的數據。因此,通過使用這個鉤子,你可以改變一樣 -

access_callback, access_arguments, page_callback, page_arguments, delivery_callback, 標題, title_callback, title_arguments, theme_callback等。

hook_menu_link_alter() - >將保存的數據更改爲{menu_links}表格。所以通過使用這個鉤子你可以改變 -

link_path, router_path, hidden, link_title等等。