Under Admin => Structures => Menus (select any menu item), I am able to create menus with no problem. However if I click save two things happen, 1. any drag/drop positioning I do is not saved and 2. all the menu items get disabled.

In order to keep them enabled I can edit each individual menu item and check the "enabled" box and manually edit the weight in that area and it works. Otherwise it doesn't work.

Also when ever I clear the drupal cache the "show as expanded" ends up disabling and all my drop down menus disappear.

I stepped through drupal and confirmed those fields are passing blank on save. I'm at a loss what to do and not sure how to fix this.

Update: Just to update I discovered one of the issues is my 1st level menu item "Products" was generated from a view. I then manually created drop down items in the menus area and placed them underneath the "Products" link. When ever I would clear the cache the menu would no longer show as expanded and all weights reset to 0 so my menu orders would tank.

Still trying to figure out why the enable/disable check boxes and weights are getting reset on save.

Final Update: O.k. I've traced it down to the fact that my server is ignoring the those specific form fields. For example the "enable/disable" check box form name was: name="links[menu_plugin_id:menu_link_content:2e7779b8-6668-4b9f-8a04-049cca46c13b][enabled]

My server would simply ignore this form field name and not pass it to the global _POST variable. I changed the form name too: name="links[menu_plugin_id:menu_link_content:1][enabled]

and it worked. I thought maybe it was mod_security so I turned that off but had no effect. At this point I'm not sure what it is in my server settings CENTOS 7.2 x86_64 standard that's causing these fields to be ignored. I'm not entirely sure what to do right now to work this out.

Hopefully somebody will come across this post someday and it will be of help.

  • 1
    I discovered that the issue was with my server and the security module suhosin. I edited its configuration to add the follwing two lines: suhosin.request.max_array_index_length = 128 suhosin.post.max_array_index_length = 128 This has allowed the variables to be passed to PHP. The issue wasn't with Drupal. Sorry for the confusion. Hopefully this will help others! Jun 15 '16 at 18:39

I think I have discovered this issue with Drupal 8 too.

I have the default Menu navigation from the Bootstrap theme, which I am trying to add a menu item for an "About me" page. When I edit the menu item link and save with correct weight and Enabled set, the menu item is ticked. However, when I click the Save button on the main Menu page, the About Me item is disabled. Two items remain ticked - the Home menu and a View.

There seems to be a bug in the global Save button for the Menu. I guess the workaround is to modify menu items by clicking Edit, rather than directly on the menu page.


I had the same problem with Drupal 8.1.2. When I cleared the caches, the order of the main menu links got messed up. I had to edit each link, set the proper weight, and save the link. This way, it worked.

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