We have all been exposed to this mess. Just create a bunch of menus and menu items (using devel_generate), then add these menus as available for a content type, and finally try to either edit an existing piece of content, or create a new. Switch to the "Menu settings" vertical tab and check the "Provide a menu link" checkbox.

screen shot 2018-04-12 at 11 34 41 am

...here's what the "Parent item" and "Weight" drop-down menus look like:

screen shot 2018-04-12 at 11 33 41 am

screen shot 2018-04-12 at 11 34 52 am

We can do better than that! Here's a couple of Drupal contributed modules that try to address this problem:


Replaces Drupal's stock node parent menu item selector with a hierarchal collapsible unordered list. Offers a breadcrumb preview of the menu item's location and an optional autocomplete search.



...adds a menu browser to the content forms. Users don't choose "parent" and "weight" for the menu item they are adding. Instead they choose a menu, and the menu gets loaded using ajax. The users then places the menu item inside the menu by clicking on the item they want to place the menu below.



...replaces the standard numeric weight dropdown widget for menu links in the node form with a tabledrag widget that lists all children for the selected parent.


https://www.drupal.org/project/bettermenus (never realized as an actual module)

Improves the Drupal menu item creation workflow by replacing the standard menu creating widget with a javascript powered tree menu.


GitHub Issue #: