Skip to main content
drupalreleases

Use direct release data with your AI assistant.

Learn more

TMGMT Drush Helper

No security coverage Under active development

Part of the Tmgmt ecosystem · 53 projects

TMGMT Drush Helper lets you run the whole Translation Management Tool (TMGMT) workflow in bulk from the command line. You can stage hundreds or thousands of entities for translation, send them to your translation provider, pull back the finished translations and accept them, all without clicking through the UI one job at a time.

The module does not use the TMGMT cart. The cart stores its contents in the browser session, which Drush can't reach. Instead, the module creates real TMGMT job entities with job items attached. They show up right away at /admin/tmgmt/jobs, and you can review them there like any other job.

Features

  • tmgmt:job-batch-add creates jobs and job items for any content entity type (nodes, media, taxonomy terms, custom blocks and so on). You can filter by bundle, entity ID or limit, and split the work into jobs of a set size. Use --skip-existing to avoid queuing the same content twice.
  • Reference discovery: --include-references also queues the taxonomy terms an entity references, including terms inside Paragraphs, and the custom blocks placed in its Layout Builder override.
  • tmgmt:job-submit-all submits pending or rejected jobs to a translator. It can also assign the translator as it submits.
  • tmgmt:job-import pulls finished translations from the provider and runs the import queues right away, so you don't have to wait for cron. It supports --fail-safe for imports that are stuck and --reprocess to import already-imported translations again.
  • tmgmt:job-accept-all accepts every job item waiting for review, which saves the translations to your content.
  • tmgmt:job-delete-all deletes jobs by state, owner or ID. Before deleting active jobs it aborts them at the provider, so you aren't billed for work that can no longer be imported.
  • Safe by default: every command supports --dry-run.
  • Pluggable importers: each provider has its own way of fetching translations, so imports go through tagged importer services. An importer for the Lionbridge Content API is included, and you can add one for any other provider by implementing a single interface.

Post-Installation

The module has no settings page. Once TMGMT is set up with your target languages and at least one translator, you can use the Drush commands. A typical run looks like this:

# 1. Stage content and the terms/blocks it references.
drush tmgmt:job-batch-add node --target-langcodes=es,fr --include-references --skip-existing

# 2. Send the jobs to the provider.
drush tmgmt:job-submit-all --translator=contentapi

# 3. Once the provider has finished, import the translations.
drush tmgmt:job-import --target-langcodes=es,fr

# 4. Accept the imported translations.
drush tmgmt:job-accept-all --target-langcodes=es,fr

Run drush help <command> to see all options. The README has the full reference, plus troubleshooting tips and a guide to writing your own importer.

Note: the commands run with full access, so entity access checks are bypassed. Limit who can run Drush on your servers.

Additional Requirements

  • Lionbridge Translation Provider is needed by the included tmgmt_helper_contentapi submodule, which lets tmgmt:job-import fetch translations from the Lionbridge Content API. All other commands work with any TMGMT translator.
  • Paragraphs and Layout Builder: when you use them, --include-references also finds the content nested inside them.

Similar projects

TMGMT includes the cart and the job overview UI, which work well for a handful of items. This module is for bulk runs that you script or repeat, such as an initial site translation, a large content migration or a scheduled sync, where using the UI isn't practical.

Supporting this Module

Please report bugs and request features in the issue queue. Patches and merge requests for importers for other translation providers are especially welcome.

Ask your assistant about TMGMT Drush Helper

Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
1
Tracked since
Oct 2026
Latest release
2 hours ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Active

Releases

Version Type Core PHP Release date
1.0.x-dev Dev 10–11 PHP >=8.3 Oct 14, 2026