This module allows you to edit the source language of Paragraphs entities using the same translation editing path as other languages. This prevents "not found" errors and makes it easier to fix direct source translations for paragraphs, especially when using Paragraphs Library. It works automatically by extending the existing translation editing route without needing any configuration.
Summary: Lets you edit the source (default language) of Paragraphs at the same translations/edit path as other languages—ending 404s for source and easing fixes for library/orphan paragraphs.
Full details are in the project README.md.
Features
- Source-language editing: Enables
/paragraphs/{paragraph}/translations/edit/{language}for the source language (e.g.,en), not just translations. - Drop-in route alter: No configuration screens; immediately extends the existing translations edit route.
- Access preserved: Honors normal
updateaccess on the Paragraph and caches per permissions. - Orphan recovery: Allows editing source paragraphs even when temporarily not attached to a parent.
- Library-friendly: Complements Paragraphs Library workflows by providing a direct source edit link.
When to use it: If you use Paragraphs with Content Translation and the “asymmetric translation widgets” approach, this module gives authors an immediate, predictable source-language edit path and removes 404s for source paragraphs.
Post-Installation
- Enable the module (Composer or UI) and clear caches.
- Verify the route is active:
drush core:route | grep -E \"/paragraphs/.*/translations/edit\". - Use the paths:
- Source edit:
/<lang-prefix>/paragraphs/{pid}/translations/edit/<source-lang>(e.g.,/en/paragraphs/123/translations/edit/en) - Translation edit: unchanged (e.g.,
/fr/paragraphs/123/translations/edit/fr)
- Source edit:
- No configuration forms are required. The module only alters the existing translations edit route.
Additional Requirements
- Drupal 10 or 11
- Paragraphs module
- Content Translation module
- paragraphs_asymmetric_translation_widgets module (route provider we extend)
Recommended modules/libraries
- Paragraphs Library (optional) – manage reusable paragraph collections; this module complements it.
- Admin Toolbar – quicker navigation when testing edit routes.
Similar projects
paragraphs_asymmetric_translation_widgets alone exposes translation edit links only for non-source languages; source edits are expected via the parent entity. This module adds a source-language edit path at the same URL pattern, preserving access and cacheability. Upstream core/Paragraphs patches can sometimes approximate this but are riskier to maintain; this module is a focused, configuration-free solution.
Supporting this Module
If you find this useful, consider opening issues, sharing feedback, or contributing tests/patches.
Community Documentation
- Read the full README.