On the menus dashboard (admin page -> Appearance -> Menus) you can build your mega menu. Therefore you need also the “CSS Classes” and “Description” fields. This two fields can be activated after clicking on “Screen Options” (on the top right) and then checking “CSS Classes” and “Description” under “Show advanced menu properties”.

With the mega menu you have following three possibilities for the main menu items:

  1. Dropdown menu
    1. Just build your menu as you’re already used to. Create submenus, subsubmenus… The mega menu will handle them all correctly.
  2. Mega menu with custom content
    1. Create a menu item and write the content into the description field. You can also use shortcodes for example to include a static block.
  3. Mega menu with submenus in columns
    1. To use this menu type, write a hash (“#”) into the description field of the menu item.
    2. The first submenu will create a new column in the mega menus content box and is also the title of this column.
      1. To hide the menu title, use a hash (“#”) for the title of that menu item.
      2. To remove the link in the menu title, leave the url field empty.
      3. To add custom content to that column, write your content into the description field. You can also use shortcodes for example to include a static block.
    3. The subsubmenus will be displayed as list elements in the parents column.

You’re able to change the width of all three possibilities to:

  • full-width
    Width of the main element (commonly of the header)
    Content width is limited to the width of the container (commonly the headers container)
  • container-width
    Width of the parent container of the widget (commonly of the header)
  • menu-width
    Width of the menu itself

Just add “menu-width / container-width / full-width” to the CSS classes field.

To use the mega menu on front-end, just assign it to the sticky header (on the menus dashboard under “Manage Locations”) or use it as widget in one of your widget areas (for example Header Main).