我想更改Drupal 8中的菜单链接。在Drupal 7中,我们可以使用实现此功能hook_translated_menu_link_alter()
。
function module_translated_menu_link_alter(&$item, $map) {
global $user;
if (!empty($item['access'])) {
// Administrator will access all menu's.
if (strpos(current_path(), 'admin/structure/menu/manage/' . $item['menu_name']) === 0 && user_access('administer menu')) {
return;
}
// If userid is equal to menu user id.
if ($user->uid == 1) {
$access = 'UNBLOCK';
break;
}
// Block menu.
else {
$access = 'BLOCK';
}
// Access FALSE if Menu not for USER.
if ($access == 'BLOCK') {
$item['access'] = FALSE;
}
}
}
在Drupal 7中,我根据某些条件(例如用户ID)隐藏/禁用菜单。
同样,我想更改Drupal 8中的菜单链接。如何实现?
hook_translated_menu_link_alter() has been replaced by hook_menu_link_load()
,我不知道它是对还是错,我只是发现了这一点。可能是您可以发现的。如果有的话,也让我知道。