menu_save
function menu_save
menu_save($menu)
Save a custom menu.
Parameters
$menu: An array representing a custom menu:
- menu_name: The unique name of the custom menu (composed of lowercase letters, numbers, and hyphens).
- title: The human readable menu title.
- description: The custom menu description.
Modules should always pass a fully populated $menu when saving a custom menu, so other modules are able to output proper status or watchdog messages.
See also
File
- modules/menu/menu.module, line 259
- Allows administrators to customize the site's navigation menus.
Code
function menu_save($menu) { $status = db_merge('menu_custom') ->key(array('menu_name' => $menu['menu_name'])) ->fields(array( 'title' => $menu['title'], 'description' => $menu['description'], )) ->execute(); menu_cache_clear_all(); switch ($status) { case SAVED_NEW: // Make sure the menu is present in the active menus variable so that its // items may appear in the menu active trail. // @see menu_set_active_menu_names() $active_menus = variable_get('menu_default_active_menus', array_keys(menu_get_menus())); if (!in_array($menu['menu_name'], $active_menus)) { $active_menus[] = $menu['menu_name']; variable_set('menu_default_active_menus', $active_menus); } module_invoke_all('menu_insert', $menu); break; case SAVED_UPDATED: module_invoke_all('menu_update', $menu); break; } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!menu!menu.module/function/menu_save/7.x