Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Search API HTML Element Filter 1.0.7 Minor update available for module search_api_html_element_filter (1.0.7). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). Varbase Media Header 9.2.1 Minor update available for module varbase_media_header (9.2.1). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

Menu item content fields

4,555 sites Security covered
View on drupal.org

This module allows you to add custom fields to menu items and display them using different view modes. You can configure these fields and control how they appear in a dedicated block.

Description

The main purpose of the module is to be able to add fields to custom menu items and render them with different view modes.

Installation and usage

First enable the menu_item_fields_ui module since is needed to create the fields and view modes.

In order to render a menu with the configured fields a new block is provided with the module called "Menu with fields".

After the menu is built the UI module can be disabled in production just like the field_ui module.

Features

  • Add fields to menu items and sort their display.
  • Have different form modes for each menu. Create and enable a form mode with the same machine name as the menu.
  • Show fielded menu items with a block chosing the view mode.
  • Configure additional options on the formatter like the rel and target attributes.
  • Add more attributes with the Link attributes module.
  • Optionally have a field on the menu link entity that overrides the display mode for each item.
    • Is up to the site builder to create it.
    • This field needs to store the string value of the display mode, for example: 'mega'.
    • The field that stores the view mode is configured on the block.

Similar modules

  • Menu item extras:
    • Provides a bundle for each menu while this module does not add any new bundle.
    • With Menu item extras the children output can be sorted on the "Manage display" interface. On Menu Item Content Fields the children are below the parent since the template tries to be as close as possible to Drupal core but you can override it.
    • In general this module tries to be more simple trying to override as few templates as posible.

Future improvements

Being able to load the field information into other kind of menu items so all the menu items can be rendered similarly (e.g with icons) and not only custom menu items.

If you believe that fields on menu items are a good feature to have in Drupal core there is a proposal to make it so since is just enabling an interface.

Notes

Inspired by the Menu Link Content fields module and of course Menu Link Extras.

Activity

Total releases
5
First release
Mar 2025
Latest release
3 days ago
Releases (12 mo)
3 ▲ from 2
Maintenance
Active

Release Timeline

Releases

Version Type Release date
2.1.1 Stable Jul 14, 2026
2.1.0 Stable Feb 9, 2026
2.0.0 Stable Aug 28, 2025
2.0.0-rc1 Pre-release Mar 4, 2025
2.x-dev Dev Mar 4, 2025