I'm trying to find recommendations for best practices in drupal menu design, but I'm not really finding what I need.

The site I'm working on is large . . . navigationally, they've chosen a horizontal menu with 6-8 large categories, each of which will have 6-10 subcategories. Most of those sub-categories will change fairly frequently and will have their own project-level navigational needs which don't appear in the horizontal menu, so projects get a vertical menu that should only be visible when a user is within the project. Not all pages within a project will necessarily appear on the project menu.

Right now, the way I see to accomplish this is to use categories to indicate where each node will fall within the hierarchy, add each project's main page as a menu item on the horizontal menu, create a menu for each project, and add that menu's block to the layout using a php snippet that evaluates the category to determine if the block should be visible or not.

Is there a better way to accomplish this? Is there somewhere to look for advice about menu design that might be relevant?

Any feedback would be greatly appreciated!

Comments

Jeff Burnz’s picture

the way I have done this on my latest project is to use url alias's (i use the category module and pathauto) and use the block display options for controlling block visability - ie tell drupal where to display blocks based on urls.

otherwise all pretty much the same as you descibe, except that I assume your main horizontal menu will be a drop menus?

I think you'll find a lot of different ideas and not many 'this is the way it should be done' sort of articles or posts - thats the beauty of Drupal, lots of different ways of achieveing the same or similar results - so you can tailor it to suit your site, rather than the other way around.