Problem/Motivation

The Varbase Internationalization Base recipe enables multilingual support, but a site that wants managed translation workflows (translation jobs, local translators, a translation provider) has to add the Translation Management Tool by hand.

Drupal Canvas page translation needs no extra module: Drupal Canvas 1.10 handles page translation natively (symmetric translation), and Drupal Canvas's only translation submodule, canvas_dev_translation, is a deprecated hidden stub (verified in the codebase). What is missing is the configuration that turns it on for the Drupal Canvas Page entity.

Prior art: #3588171 Canvas Multilingual was committed then reverted and closed as won't fix. This issue supersedes it.

Steps to reproduce

  1. Install Varbase 11 (Drupal 11.4.5, Drupal Canvas 1.10.1) with the Varbase Starter site template.
  2. Apply the Varbase Internationalization Base recipe.
  3. Drupal Canvas pages are not translatable, and the Translation Management Tool is not available in the codebase.

Proposed resolution

  • Enable Drupal Canvas page translation through the recipe's two config actions: language.content_settings.canvas_page.canvas_page (content translation for the Drupal Canvas Page entity) and core.base_field_override.canvas_page.canvas_page.components (component input values translatable, translatable: true with translation_sync on inputs).
  • Add the Translation Management Tool to the codebase without enabling it: composer.json requires drupal/tmgmt: ~1. Sites that want translation jobs, local translators or a provider run drush en tmgmt tmgmt_content tmgmt_config tmgmt_local.
  • Remove drupal/canvas_translate. The require block is now exactly drupal/core: ~11.4.0, drupal/eca: ~3, drupal/tmgmt: ~1. Add the "Drupal Canvas" and "TMGMT" keywords.
  • No new module is installed by the recipe: recipe.yml install: is unchanged and no permission grants were added.
  • Document the addition in README.md and CHANGELOG.md (Unreleased).

Merge request: !12

Verified

Two fresh installs through the browser installer on a Varbase 11 DDEV site (Drupal 11.4.5, Drupal Canvas 1.10.1), Varbase Starter site template, recipe applied through the Project Browser UI:

  • The recipe enables language, locale, config_translation, content_translation, eca, eca_language.
  • Content translation is enabled for canvas_page with components translatable.
  • The Translation Management Tool stayed off: 0 of 9 TMGMT modules enabled, all available in the codebase; enabling them afterwards with drush worked.
  • No HTTP 500 in the Drupal Canvas editor on the multilingual site.

Not verified on this scope: page translation through Drupal Canvas's own multilingual support has not been re-tested end to end. The earlier verification run exercised a Drupal Canvas Translate workspace with that module enabled manually; Drupal Canvas Translate is out of scope now, so that run is not evidence for this change.

Remaining tasks

  • ✅ File an issue
  • ✅ Addition/Change/Update/Fix
  • ❌ Testing to ensure no regression
  • ➖ Automated unit testing coverage
  • ➖ Automated functional testing coverage
  • ➖ UX/UI designer responsibilities
  • ➖ Readability
  • ➖ Accessibility
  • ➖ Performance
  • ➖ Security
  • ✅ Developer Documentation
  • ➖ User Guide Documentation
  • ❌ Reviewed by human
  • ❌ Code review by maintainers
  • ❌ Full testing and approval
  • ❌ Credit contributors
  • ❌ Review with the product owner
  • ✅ Release notes snippet
  • ✅ Release varbase-11.0.0, varbase_i18n_base-1.0.0-rc2

User interface changes

  • Drupal Canvas pages get a Translate tab, and component input values can be translated.

API changes

  • N/A

Data model changes

  • language.content_settings.canvas_page.canvas_page enables content translation for the Drupal Canvas Page entity.
  • core.base_field_override.canvas_page.canvas_page.components makes the components base field translatable.

Release notes snippet

  • Drupal Canvas pages are now translatable through Drupal Canvas's own multilingual support: content translation is enabled for the Drupal Canvas Page entity and component input values are translatable.
  • The Translation Management Tool (drupal/tmgmt: ~1) is now available in the codebase, not enabled. Enable it with drush en tmgmt tmgmt_content tmgmt_config tmgmt_local for translation jobs, local translators or a translation provider.
Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

rajab natshah created an issue. See original summary.

rajab natshah’s picture

Issue summary: View changes
rajab natshah’s picture

Title: Add the Translation Management Tool (TMGMT) and Canvas Translate to the Varbase Internationalization Base recipe » Add the Translation Management Tool (TMGMT) and Drupal Canvas page translation to the Varbase Internationalization Base recipe
Issue summary: View changes

  • rajab natshah committed 2196759c on 1.0.x
    feat: #3618242 Add the Translation Management Tool (TMGMT) and Drupal...
rajab natshah’s picture

Issue summary: View changes
Status: Active » Fixed
Issue tags: +varbase-11.0.0-rc2, +varbase_i18n_base-1.0.0-rc2

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

rajab natshah’s picture

Issue summary: View changes
Issue tags: -varbase-11.0.0-rc2 +varbase-11.0.0

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.