To many, the perfect menu system is the Holy Grail of good web development. It's a trade-off between functionality and sexiness, accessibility and technology -- and Drupal throws in a few new twists at that. The default side menus are OK for a blog-like page theme, and primary links are quirky and nonstandard, to put it delicately.

This forum is about listing and critiquing the various menu systems out there and helping developers and themers find the right solution for them.

Don't be shy about posting links to your own site or pasting in code.

Comments

roopletheme’s picture

One of our new GPL themes, Beale Street, has son-of-suckerfish dropdown menus implemented directly in the theme. For those not familiar with these XHTML and CSS-based menus, take a look at the original suckerfish menu article, as well as the son-of-suckerfish article. To see the menus in action, have a look at Beale Street at our demo site. The theme is free to download from our download page.

These menus are well supported by modern browsers. However, some shortcomings in IE's support of the hover attribute require a bit of javascript to work correctly in the Microsoft browsers. This makes the menus perform a bit more sluggishly in IE, particularly in IE6, but they still work reasonably well. We have tested the Beale Street menus with IE6, IE7, Firefox, Safari, and Opera.

Implementing these menus in the theme like this is simply one possible approach. Like any other approach, it has advantages and disadvantages. Among the advantages to this approach are 1.) it is very lightweight compared to most module-based solutions, 2.) by isolating the menu behavior to a single menu, we do not adversely effect the behavior of other menus and menu types, and 3.) it's very easy to customize the visual aspects of the menus. On the down side, you must integrate the menu placement into the core of the theme's page.tpl.php file, and you need to set parent menu items to 'Expanded' in order for the menus to work properly. Modest demands for what we're doing, but it might not work for everybody.

Always interested in your opinions and feedback. We're hoping to see some different menu types posted to this thread, because let's face it... cool menus rock.

www.roopletheme.com