function menu_get_menus

7.x menu.module menu_get_menus($all = TRUE)
6.x menu.module menu_get_menus($all = TRUE)

Return an associative array of the custom menus names.

Parameters

$all: If FALSE return only user-added menus, or if TRUE also include the menus defined by the system.

Return value

An array with the machine-readable names as the keys, and human-readable titles as the values.

4 calls to menu_get_menus()
menu_block in drupal-6.x/modules/menu/menu.module
Implementation of hook_block().
menu_configure in drupal-6.x/modules/menu/menu.admin.inc
Menu callback; Build the form presenting menu configuration options.
menu_edit_item in drupal-6.x/modules/menu/menu.admin.inc
Menu callback; Build the menu link editing form.
menu_form_alter in drupal-6.x/modules/menu/menu.module
Implementation of hook_form_alter(). Adds menu item fields to the node form.

File

drupal-6.x/modules/menu/menu.module, line 440
Allows administrators to customize the site navigation menu.

Code

function menu_get_menus($all = TRUE) {
  $system_menus = menu_list_system_menus();
  $sql = 'SELECT * FROM {menu_custom}';
  if (!$all) {
    $sql .= ' WHERE menu_name NOT IN (' . implode(',', array_fill(0, count($system_menus), "'%s'")) . ')';
  }
  $sql .= ' ORDER BY title';
  $result = db_query($sql, $system_menus);
  $rows = array();
  while ($r = db_fetch_array($result)) {
    $rows[$r['menu_name']] = $r['title'];
  }
  return $rows;
}