Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Usage Milestone: Google Analytics Module google_analytics crossed 1,000 active installs. Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Release: GraphQL Compose Codegen 1.1.2 Minor update available for module graphql_compose_codegen (1.1.2). Release: Mapy.com 1.1.3 Minor update available for module mapycom (1.1.3). Release: Ckeditor5 entity browser 3.0.3 Minor update available for module ckeditor5_entity_browser (3.0.3). Release: Ckeditor5 entity browser 3.0.1 Minor update available for module ckeditor5_entity_browser (3.0.1). Release: Ckeditor5 entity browser 3.0.2 Minor update available for module ckeditor5_entity_browser (3.0.2). Release: Teamleader Integration 4.0.2 Minor update available for module teamleader (4.0.2). Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Menu Link (Field)

572 sites Security covered Drupal 10–11
View on drupal.org

This module allows any entity to have a menu link field, making menu links manageable through Drupal's Field API. This integration provides benefits like enhanced views, customizable widgets, revision support, and granular permission control for menu links.

Defines a menu link field type.

Drupal's core Menu module allows nodes to place menu links (linking to the node) into the menu. The Menu Link (Field) module however allows entities of any type to place menu links into the menu using a field.

Menu link as a field

Menu links as fields gives you the following benefits.

  • Field API. Menu links will be automatically available to modules that interact with the Field API (like the Views module).
  • Widgets and formatters. Use separate widgets and formatters per entity type (and bundle). Contrib modules can provide all kinds of new widgets and formatters.
  • Revision support. Menu links' properties are stored per revision (among which their location in the menu).
  • Permission control. Menu links on nodes can be added by users that don't have access to administer full menus. Permission for menu links on nodes can even be restricted per role with modules like the Field permissions module.

Menu module integration

The Menu Link (Field) module integrates seamlessly into the Menu module. The UI for node types, to configure which menus are available, isn't altered.

The "Menu settings" tab is however removed from the node form and replaced by an field widget (To put the widget into a vertical tab use the Field group module).

Now that menu links are stored as a field it is thus possible to use different widgets per node type.

Developers

Relations between menu links and entities

The Menu Link (Field) module provides one predefined field stored in a fixed database table (using field_sql_storage) named {field_data_menu_link}. Using a fixed table allows other modules to use this table to retrieve and build upon relations between menu links and entities (This field is also being used for the integration with the Menu module).

Menu API additions

To speed up saving/deleting of menu links, the Menu link provides a couple of additions to the Menu API. Those may be used by other modules.

  • menu_link_load_multiple(array $mlids, array $conditions = array())
  • menu_link_delete_multiple(array $mlids)

Plans

  • Provide an generic parent menu link selector element. Using jQuery we could improve usability. Other modules should be able to hook into it and for example restrict the available parents.

Contributors

The initial module is provided by casey.

Depends on

Dependencies of the latest stable release

  • field Drupal core

Required by

1 tracked project depends on this one

Activity

Tracked releases
2
Tracked since
Jul 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 2
Maintenance
Dormant

Releases

Version Type Core Release date
2.0.7 Stable 10–11 Jul 25, 2025
2.0.6 Stable 10–11 Jul 25, 2025