function hook_menu_link_alter

7.x system.api.php hook_menu_link_alter(&$item)
6.x core.php hook_menu_link_alter(&$item, $menu)

Alter the data being saved to the {menu_links} table by menu_link_save().

Parameters

$item: Associative array defining a menu link as passed into menu_link_save().

See also

hook_translated_menu_link_alter()

Related topics

2 functions implement hook_menu_link_alter()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

user_menu_link_alter in drupal/modules/user/user.module
Implements hook_menu_link_alter().
user_translated_menu_link_alter in drupal/modules/user/user.module
Implements hook_translated_menu_link_alter().
1 invocation of hook_menu_link_alter()
menu_link_save in drupal/includes/menu.inc
Saves a menu link.

File

drupal/modules/system/system.api.php, line 1305
Hooks provided by Drupal core and the System module.

Code

function hook_menu_link_alter(&$item) {
  // Make all new admin links hidden (a.k.a disabled).
  if (strpos($item['link_path'], 'admin') === 0 && empty($item['mlid'])) {
    $item['hidden'] = 1;
  }
  // Flag a link to be altered by hook_translated_menu_link_alter().
  if ($item['link_path'] == 'devel/cache/clear') {
    $item['options']['alter'] = TRUE;
  }
  // Flag a link to be altered by hook_translated_menu_link_alter(), but only
  // if it is derived from a menu router item; i.e., do not alter a custom
  // menu link pointing to the same path that has been created by a user.
  if ($item['link_path'] == 'user' && $item['module'] == 'system') {
    $item['options']['alter'] = TRUE;
  }
}