7

I use the Admin Menu module for my projects. In my Drupal 7 and Pressflow 7 instances, it randomly shows only some menu items.

At first, I thought I could correct this by clearing menu cache. When I went to the front page, I once again got the corrupted menu.

wrong

correct

How do I solve this error, permanently?

I found out this issue is reported in detail, but there is only a workaround (disable menu caching).

I disabled menu caching with drush vset admin_menu_cache_client 0 as a workaround. (I am still testing this issue with the menu cache enabled.)

I checked and eliminated JavaScript errors using Firebug browser extension.

I removed BOM from *.js files as suggested in this answer.

7
  • 1
    This workaround is simplier to apply if you have Drush. It's the same as the above, just easier. Did you check for BOM corrupted modules on your intallation ?
    – Countzero
    Commented Apr 3, 2012 at 8:36
  • I did in linux bash: find . | xargs grep -l $'\xEF\xBB\xBF' > /tmp/bom.txt and I found that a number of files *.js *.png *.jpg *.gif in /sites/all/libraries contain BOM characters. Should I also correct image files?
    – LLub
    Commented Apr 3, 2012 at 8:46
  • I don't think so, but the js files may definitely need attention.
    – Countzero
    Commented Apr 3, 2012 at 8:48
  • Are you sure its not just an authorization/role settings problem? Commented Apr 3, 2012 at 9:45
  • 1
    I don't think so, I use uid 1 and I still get this error.
    – LLub
    Commented Apr 3, 2012 at 9:52

5 Answers 5

4

Modules > Administration Menu > Configure

In the Performance tab, untick Cache menu in client-side browser.

Save configuration.

4

Add this to the bottom of your settings.php file:

$conf['admin_menu_cache_client'] = FALSE;

1
  • Cache menu in client-side browser in Modules > Administration Menu > Configure doesn't worked for me, but this one does.
    – sobi3ch
    Commented Nov 9, 2016 at 11:56
0

There is an option for rebuilding, although it refreshes all the menus. If the user has the permission to access that menu, it will be shown.

0

I had issues with this, but it had to do with the mod_rewrite module in Apache's config file (httpd.conf). Make sure it's not commented out!

This:

LoadModule rewrite_module modules/mod_rewrite.so

Instead of this:

# LoadModule rewrite_module modules/mod_rewrite.so

As soon as I did that, my admin menu appeared again and it fixed another issue with my configuration changes not saving.

0

In your profile settings: uncheck the "Use the overlay for administrative pages." option under "Administrative overlay".

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.