Module Description
Ultimenu is the UltimatelyDeadSimple megamenu ever with dynamic region creation.

An Ultimenu block is based on a menu. Ultimenu regions are based on the menu items. The result is a block contains regions containing blocks, as opposed to: a region contains blocks.

First things first! Running a multilingual site?


* Be sure to read this and this!
* FAQs

The module manages the toggle of Ultimenu blocks, regions, and a skins library, while leaving the management of block, menu and regions to Drupal.

At individual Ultimenu block, you can define a unique skin and the flyout orientation.

You don't have to write regions in the theme .info, however you can always permanently store resulting region definitions in it. See Notes below for possible handle of confusion.

Requirements - Drupal core optional menu.module should be enabled.

Versions
* 3.x requires Blazy:2.17 - 3.x to DRY with vanilla JS and PHP methods, inline with core directions.
* 2.x is a major rewrite to update for Drupal 8.6+, and add new features. It may not be compatible with 1.x in terms of cosmetics/ styling. Check out updating, if updating, else ignore.
* 1.x is in maintenance mode, please consider 2.x for features.

Installation/ Configuration https://git.drupalcode.org/project/ultimenu/blob/8.x-2.x/docs/CONFIGURAT...


* /admin/module: Enable or install the module.
* /admin/structure/ultimenu:
* Toggle the Ultimenu blocks, choose Main navigation, etc. Save.


* Toggle Ultimenu regions. Once a menu is enabled and saved, dynamic regions will be available to toggle. Only enabled regions (based on enabled menu items) will be visible at block/ context admin.
* Toggle Ultimenu goodies. Adjust the rest here.
* /admin/structure/block: Search for "Ultimenu: Menu name" block, and assign it into header, sidebar, footer or navigation region, except Ultimenu regions.
* Add other blocks to the Ultimenu regions., prefixed with Ultimenu:main:..., etc.

Features at 2.x
* Ajaxified Ultimenu regions, suitable for massive menu contents.
* Off-canvas menu, mobile only by default. Yet, configurable for both mobile and desktop under Ultimenu goodies section. Installation, and styling.
* Icon based menu titles.
* Icon based on menu descriptions since 2.11.

Features
* Multiple instance of Ultimenus based on system and menu modules.
* Dynamic regions based on menu items which is toggled without touching .info.
* Render menu description.
* Menu description above menu title.
* Add title class to menu item list.
* Add mlid class to menu item list.
* Add menu counter class
* Remove browser tooltip.
* Use mlid, not title for Ultimenu region key. This is the important key to have a working multilingual site.
* Custom skins, or theme default "css/ultimenu" directory for auto discovery.
* Individual flyout orientation: horizontal to bottom or top, vertical to left or right.
* Pure CSS3 animation and basic styling is provided without assumption. Please see and override the ultimenu.css for more elaborate positioning, either left, centered or right to menu list or menu bar. And a simple JS to highlight the current menu item after hover (.hover) whenever CSS (:hover) fails.
* With the goodness of core blocks and regions, you can embed almost anything: views, panels, blocks, menu_block, boxes, slideshow..., except a toothpick.

All 1-9 are off by default.

i18n with Entity translation integration Ultimenu works great if the region is not language dependent, that is using the MLID (D7), or UUID/ HASH (D8) as the region key.

These region keys are ugly. However as they are more to machine than human, nothing to worry about. For human, hence themers, relevant CSS classes can be enabled by options.

Check out this screenshot. If Entity translation (D7) keeps one node for multiple languages, Ultimenu keeps one region for multiple languages. D8 already supports entity translation.


* admin/structure/ultimenu Check: Use mlid, not title for Ultimenu region key, because the title is language dependent which will cause issue with different languages.
* admin/structure/menu/manage/[MENU-NAME]/edit Check: option #2 - Translate and Localize.
* admin/structure/menu/item/[MLID]/edit Keep "language neutral" to localize the menu title.

Why silly claim UltimatelyDeadSimple?
* Ultimenu doesn't create another database table just to store blocks. Meaning less complexity. It doesn't want to manage block placements which is already existing at core system. Silly put, Ultimenu doesn't create a government within a government.
* Ultimenu doesn't modify core menu tables. Meaning less headache and smaller footprint with tons of menu items. Drupal has already hundreds of menu items at fresh install, and adding more stuffs into each item is a big take. Ultimenu is not brave for such a take.
* Ultimenu doesn't create another new entity just to have blocks which are already entities. Meaning adheres to KISS principle.
* Ultimenu doesn't rely on JavaScript. It will simply work fine with JS disabled! Meaning respectful to non-JS users and SE friendly.
* Ultimenu integrates very well with the ancient system of core Drupal blocks, regions and themes, which is proven to last to D8 today and likely future-proof. Meaning no beating around the bush, nor workarounds. You can just do straight things with core system.
* Ultimenu is proudly ugly by default. Meaning it is your themer's job to make it awesome.

Related modules
* OM Maximenu
* Megamenu
* Superfish
* Menu Views
* MuchoMenu
* Giga Menu
* Menu Minipanels
* Mega Dropdown
* Menu Attach Block

Recommended modules
* Widget, to have a single block which holds a few sub-blocks with the ease of core layout plugins for unique layout composition per Ultimenu region.
* Gridstack Beta5+, or latest DEV in tandem with Widget. Alternatively use Radix, or Bootstrap layouts, to ease up building complex layouts with individual region within Widget.

Notes Whenever a menu item is removed/disabled, the relevant region will be removed. If you manually copy/store them in theme .info, regions will always be visible, which is another case. Dynamic region is indeed removed, but system now displays your written regions. However you can force disabling unwanted Ultimenu regions via UI if so required, altering the system.

Make sure to clear the cache to see the new regions, or when updated the module.

Known issues/ Troubleshooting Please read this before you start working with Ultimenu to avoid issues in the first place.


* This module is not for you if you are not familiar with CSS, except 2.x branch which is a little friendlier to non-css-savvy and merrier, too. It requires custom CSS works to fit your design needs, and also to fix Ultimenu limitation with CSS thingies. Ultimenu doesn't want to deal with different themes compatibility which is more a themer's job. Sensible defaults are provided. Please consider them as a starter, not final. Ultimenu just provides the bare minimum, admittedly ugly, layout and styling, so that themers can get a job for it.
* Multilingual site limitation which wants a single unique region key for different languages as mentioned above.
* Check out known issues and more TROUBLESHOOTING.

Update notes Be sure to clear the cache whenever updating the module to the latest if trouble with the changes. Optionally regenerate CSS and JS to pick latest changes if any.

FAQS https://git.drupalcode.org/project/ultimenu/blob/8.x-2.x/docs/FAQ.md

Project Usage
1603
Creation Date
Changed Date
Security Covered
Covered By Security Advisory
Version Available
Production
Module Summary
Ultimenu module aims to solve the management of Ultimenu blocks, regions, and skins library while leaving the management of block, menu, and regions to Drupal, providing dynamic region creation based on menu items.
Data Name
ultimenu

OPENAI CHATBOT

OPENAI CHATBOT

14:29:17
Generic Chatbot
Hi, I'm a Drupal module expert powered by OpenAI, answering your questions about the Drupal module ecosystem. How can I be helpful today? Please note that we will log your question.