Take full control of Drupal 8 menus!
Mega Menu is a module that is built on top of the Drupal 8 core menu system and inherits all of the core menu system’s capabilities, allowing you to build flexible and beautiful menus.
You’ll get full control of Drupal 8 menu so it will be very easy to create gorgeous menu layouts.
Mega Menu for Drupal 8 allows you to add any custom content, including Drupal blocks and HTML code, to the menu.
The module contains several predefined skins and allows you to extend it with custom skins and to customize with CSS in order to integrate with your theme and to provide better user experience.
Built-in responsive styles and support for touch screens provide logic for collapsing menus at desired viewport width.
FEATURES
- Fully working demo environment, just as you can see it on our demo site, so you’ll be able to research how we created all those layouts and customizations
- Integration with core Drupal 8 menu system
- Wide variety of menu items
- Easy integration with your themes
- Extend look and feel with custom skins and CSS styles
- Built-in responsive styles and support for touch screens
- Fully accessible for screen-readers
- Add any custom content, including Drupal blocks and HTML code
- Use images and icons in menu items
- Smart handling of menu layouts
- Clean BEM/SMACSS CSS files and styles structure
- Built-in right-to-left support
IMPORTANT NOTES AND LIMITATIONS
- Mega Menu for Drupal 8 needs to be styled manually to adopt the look and feel of custom Drupal themes.
- You’ll not be able to use twig templates for changing menus with enabled mega menu because the module uses custom twig function with very complex logic for generating the menu’s output. Please read the section “Developers notes” below for detailed information.
- Because module’s JavaScript logic uses menu’s ID property, the same menu cannot appear more than once on the same page.
- The Mega Menu module extends ServiceProvider class in order to handle saving third party options for menu items. If you use some other module that extends the same class, it’s possible that the saving third party settings feature of one of them will not work.
- Because of the way how Drupal 8 handles hooks, it’s not possible to define custom skins in themes, but in modules only.