Error message

You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).

function menu_link_delete

Delete one or several menu links.

Parameters

$mlid: A valid menu link mlid or NULL. If NULL, $path is used.

$path: The path to the menu items to be deleted. $mlid must be NULL.

Related topics

Menu system
Define the navigation menus, and route page requests to code based on URLs.
9 calls to menu_link_delete()
book_node_delete in modules/book/book.module
Implements hook_node_delete().
book_remove_form_submit in modules/book/book.pages.inc
Form submission handler for book_remove_form().
MenuLinksUnitTestCase::testMenuLinkReparenting in modules/simpletest/tests/menu.test
Test automatic reparenting of menu links.
menu_delete_menu_confirm_submit in modules/menu/menu.admin.inc
Delete a custom menu and all links in it.
menu_item_delete_form_submit in modules/menu/menu.admin.inc
Process menu delete form submissions.

... See full list

File

includes/menu.inc, line 3075

Code

function menu_link_delete ($mlid, $path = NULL) {
 if (isset($mlid)) {
 _menu_delete_item (db_query ("SELECT * FROM {menu_links} WHERE mlid = :mlid", array(
 ':mlid' => $mlid,
 ))->fetchAssoc ());
 }
 else {
 $result = db_query ("SELECT * FROM {menu_links} WHERE link_path = :link_path", array(
 ':link_path' => $path,
 ));
 foreach ($result as $link) {
 _menu_delete_item ($link);
 }
 }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.