This project is not covered by Drupal’s security advisory policy.
Menu Autopilot turns Drupal navigation into an automatic, content-driven system. Curate your top-level menu the way you always have, then let each item's children build and maintain themselves from your published content. Publish a new product, article, or landing page and it appears in the right menu automatically; unpublish it and it disappears. No more hand-editing menus to mirror your content.
It is to navigation what Pathauto is to URL aliases: the automatic, config-driven default.
The problem
Drupal's menus are hand-curated. On content-heavy or decoupled sites, editors spend real time redoing navigation to match content, and in a headless build a hand-placed link is easy to point at the wrong URL. Existing taxonomy-menu modules generate menu items from terms; none generate items from content nodes under a curated parent with clean, headless-ready URLs. Menu Autopilot fills that gap.
What it does
- Hybrid menus. You curate the top level; each item can auto-populate its children from published content.
- You choose the source, per item: a taxonomy term, a content type, or a hand-picked ordered list of nodes.
- Editor-controlled order and labels. Choose A→Z, date, or Keep current order so you can drag children on the menu overview. New matches append at the end. Child menu label is a token pattern (for example
[node:title] [node:field_subtitle]) so nav can include a subtitle without changing the page title. - Existing children stay under your control. When you enable Menu Autopilot on a parent that already has links, you pick what happens: reuse matching links (and optionally drop extras), add only the missing ones, or replace every child. An optional checkbox moves matching unmanaged links from elsewhere in the same menu. Matching uses node URIs and path aliases, so an existing
/platforms/helioslink is not treated as a new destination. - Always in sync. Children are created, updated, reordered, reparented, and removed automatically as content is published, unpublished, retyped, or deleted.
- Headless-clean URLs. Generated links use canonical entity references, so they resolve to your real path alias, never
/node/123or an editorial route. - Multilingual. Synced links are translatable and language-aware.
- Accessible by design, built to power a fully keyboard-navigable, WCAG 2.1 AA menu.
Decoupled or traditional
Menu Autopilot produces ordinary menu links, so the composed tree is exposed by any consumer, whether GraphQL (GraphQL Compose), JSON:API, or a classic Drupal theme, with no extra work, and it fans cache-tag revalidation to your decoupled front end. There is nothing to teach your API layer.
Quick start
- Install and enable the module:
composer require 'drupal/menu_autopilot:^1.2' - Edit a top-level menu link and open the Menu Autopilot: children of … section. Choose a source. If that parent already has children, pick how to treat them; the form explains each option as you select it. Set Sort children by to Keep current order if you want to drag the children yourself.
- Publish content and it appears under that item. Run
drush menu-autopilot:rebuildto reconcile at any time.
Requires Drupal 10.6+ or 11.3+. Maintained by Jeremy Michael Cerda and Wilkes & Liberty, LLC.
Project information
- Project categories: Content editing experience, Decoupled, Site structure
2 sites report using this module
- Created by jmcerda on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.