I've ended up with two basic pages in the navigation menu and there seems no way to get them off.

The pages are just plain ol' pages; the pages are not created by a module. I am using the Drupal 7 core Book Module. One of the pages in question is a book; the other is a child page of the book. The book has other child pages which are not listed in the navigation menu. The Book navigation menu works fine.

  • admin/structure/menu/manage/navigation has no "Delete" Links by the pages.

  • editing the page, there is no "add page to menu" specified. I've even tried turning that on, creating a menu item, then turning it off again. The pages still list in Navigation.

  • I've tried drush cc all

I have the option to disable these pages, but clearly that's just wrong. Can anyone help?

3 Answers 3


Ok, just in case anyone else finds this useful: I got in this pickle because I installed a module (nodehierarchy) which generated menu items. Menu items created by modules are not deletable in the normal admin UI. When I removed the module it did not clean up after itself, leaving orphaned entries that drupal thought belong to a module that doesn't exist.

I don't know why drush cc menu didn't clean them out, perhaps a policy of not deleting data just in case.

To fix: start a mysql client on your drupal db and inspect the contents of menu_links, find the rows and delete. e.g.

mysql> delete from menu_links where module='nodehierarchy';

Then clear caches and fixed.


In my case I have two modules which have the ability to add links (that I know of...):

  1. Views (/admin/structure/views -> Edit a View -> Page Settings -> Menu)
  2. Pages (/admin/structure/pages -> Edit a Custom Page -> Click on Menu)

In order to remove the menu links I had to do the following:

  1. In the module that creates the menu item (Views, Pages, etc.) set the Menu option to "No Menu".
  2. In the menu config (/admin/structure/menu/manage/), go to the menu item and click on "reset" to remove it from the menu.
  3. Disable the Custom Page or View (the individual view or page, not the entire module)
  4. Re-enable the Custom Page or View
  5. The menu item should no longer be present in the menu_links table.

My issue was related to what seems to be a core problem (see: https://www.drupal.org/node/1058672 OR https://www.drupal.org/node/1029022) which is that if a menu item is created and then removed, it can leave behind a stale record in the menu_links DB table. Disabling the affected Custom Page or View is what actually removed it from the DB for me.


my problem was very close to the previous one, with some differences;

after an upgrade from D6 to D7, i suppressed some type of contents (better to do it before !!!);

but navigation links stayed under "create content";

i reinitialized every suppressed type of content link (which is not the right way), and it created each time a new "add content" line in the menu;

i went in menu_links, and suppressed each line with add/content (found in link_path and router_path) one (except one)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.