This project is not covered by Drupal’s security advisory policy.
INTRODUCTION
The Menu Language Fallback module keeps menu items visible on multilingual Drupal sites that use path-prefix URL language negotiation, while rewriting node links so they point to the node's original/default language when no translation exists in the active content language.
Without this module, a menu link to a node that is only available in English can still render as /de/node/123 (or /de/some-alias) while the interface language is German. That URL is misleading and often leads to an untranslated (or access-denied) page.
Project page: https://www.drupal.org/project/menu_language_fallback
Issue queue: https://www.drupal.org/project/issues/menu_language_fallback
REQUIREMENTS
This module requires the following core modules:
- Node (
drupal:node) - Content Translation (
drupal:content_translation) - Menu UI (
drupal:menu_ui)
Language and a path-prefix (or similar) URL language negotiation method should be configured for the module's behavior to be observable.
INSTALLATION
Install as you would normally install a contributed Drupal module.
Using Composer (recommended):
composer require drupal/menu_language_fallback
drush en menu_language_fallback -y
Or see https://www.drupal.org/docs/extending-drupal/installing-modules for further information.
CONFIGURATION
- Enable Menu Language Fallback.
- Go to Configuration → Regional and language → Menu language fallback (
/admin/config/regional/menu-language-fallback). - Select the menus that should rewrite untranslated node links.
- Save configuration.
By default no menus are selected; the behavior is opt-in per menu.
Only menu links that resolve to the entity.node.canonical route are rewritten. External links, views links, and other entity types pass through unchanged (possible future enhancement).
HOW IT DIFFERS FROM SIMILAR MODULES
| Module | Behavior when a node has no translation |
|---|---|
| Menu Multilingual | Hides the menu item |
| Menu Block Current Language | Hides the menu item |
| Menu Language Fallback (this module) | Keeps the item visible; rewrites the URL to the original language |
Use this module when you want a complete menu structure in every language, but prefer honest links (original language, typically without the current language prefix) over removing items.
These approaches are complementary: you can hide some menus with another module and apply fallback rewriting to others with this one.
Project information
- Project categories: Multilingual
- Created by yogesh045 on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
