Zakaria Boudchiche
Tous les projets
open-source2026·Maintainer

AI Content Translator

A contributed Drupal 11 and 12 module that translates nodes, taxonomy terms and interface strings through OpenAI-compatible APIs, fingerprinting its own output so human translations are preserved.

  • Covered by the Drupal security advisory policy
  • Compatible with Drupal 11.1 and 12
  • Preserves human-authored translations
  • Featured in The Drop Times

The problem

Multilingual Drupal projects reach the same impasse. Translating a large site by hand is slow and expensive. Translating it automatically is fast — but the next automated run tends to overwrite the corrections a human translator made, and those corrections are exactly the part worth keeping.

Teams end up choosing between automation and quality. Most pick quality, and the translation backlog grows.

The approach

AI Content Translator records a fingerprint of every translation it generates. When it runs again, it compares the stored fingerprint against what's currently in the database:

  • Unchanged since it was generated — the module's own output. Safe to refresh.
  • Changed — a person edited it. Left alone, unless an overwrite is explicitly requested.

That single distinction is what makes routine automated runs safe on a site with real translators working on it.

What it handles

It translates nodes, taxonomy terms and interface strings, and can recurse into referenced Paragraphs. Every enabled language except the site default is selected as a target automatically.

Editors can work from a per-node interface, run translations in bulk from an admin page, or use the AI translation option on a node's own Translations tab. Longer runs go through Drupal's Batch API rather than timing out on a single request.

Administrators configure a prompt template and, where terminology matters, per-language glossaries — useful for institutional sites where a term has an agreed official translation.

Providers

The module talks to any OpenAI-compatible chat-completions endpoint:

  • OpenAI
  • Azure OpenAI
  • Local servers such as Ollama

The local option matters for public-sector clients. Source text is sent to whichever endpoint is configured, so organisations that can't send content to a third party can run a model on their own infrastructure instead. The API token is stored in Drupal State rather than exported configuration, so it doesn't end up in a config repository.

Release

Version 1.0.1 was released on 10 August 2026, supporting Drupal 11.1 and Drupal 12. It's covered by the Drupal security advisory policy, which means the project passed review and security issues follow the official process.

The release added a configurable API timeout, tightened permission checks on the Translate (AI) link, and moved to object-oriented hook methods with autowired services for Drupal 11.1 and 12.

Scope

It's deliberately a focused tool rather than a translation platform. It complements broader systems such as TMGMT and the AI module's translation features instead of replacing them — the aim was to solve one problem properly.

Drupal 11Drupal 12MultilingualPHPContributed moduleOpenAI API