Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).

paragraphs_source_edit

4 sites No security coverage
View on drupal.org

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 update access 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

  1. Enable the module (Composer or UI) and clear caches.
  2. Verify the route is active: drush core:route | grep -E \"/paragraphs/.*/translations/edit\".
  3. 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)
  4. 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)
  • 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

Activity

Total releases
5
First release
Oct 2025
Latest release
6 months ago
Release cadence
0 days
Stability
80% stable

Release Timeline

Releases

Version Type Release date
1.0.3 Stable Oct 9, 2025
1.0.2 Stable Oct 9, 2025
1.0.1 Stable Oct 9, 2025
1.0.0 Stable Oct 9, 2025
1.0.x-dev Dev Oct 9, 2025