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;
}