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.
...here's what the "Parent item" and "Weight" drop-down menus look like:
We can do better than that! Here's a couple of Drupal contributed modules that try to address this problem:
https://www.drupal.org/project/menu_select
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.
https://www.drupal.org/project/menuux
...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.
https://www.drupal.org/project/menu_link_weight
...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.
Recent comments
Thank you for sharing your final solution. This may be very helpful for future visitors trying to do the same.
Views Accordion as primary navigation
I think this is good enough. Thanks for the surprise, @yorkshirepudding! Here's the CSS i use for future references. (Works on black, very minimal): /* ========== ACCORDION...
Views Accordion as primary navigation
Glad to hear it helped
Views Accordion as primary navigation