Upload multiple translated files at once and automatically create entity translations - before and        after comparison of the File Bulkupload Translations widget for Drupal

This project is not covered by Drupal’s security advisory policy.

Managing multilingual file fields in Drupal means editing each translation one by one — open the form, upload, save, switch language, repeat. For 10 languages, that's 10 round-trips.

File Bulkupload Translations eliminates that workflow. Drop all your translated files at once (report_en.pdf, rapport_fr.pdf, bericht_de.pdf…) and the module creates every translation automatically. What used to take minutes now takes seconds.

How it works

  1. Upload multiple files in a single operation
  2. The module extracts the language code from each filename using a configurable regex
  3. Translations are created (or updated) instantly — no extra clicks

Live regex tester

Not sure your filenames will match? The built-in tester gives you real-time visual feedback right on the settings page. Paste your filenames, pick a mode (suffix, prefix, or custom regex), and see exactly what gets extracted — highlighted in context, with green/red status for each file.

Three modes out of the box:

  • Suffixreport_en.pdf, document-fr.docx
  • Prefixen-report.pdf, fr_document.docx
  • Custom regex — any pattern you need

Manage translations without leaving the form

All existing translations are displayed in a table directly inside the widget. From there you can:

  • Edit any translation in a modal dialog
  • Remove a translation with one click

Everything is AJAX-powered — the table refreshes automatically, no page reload needed.

Smart validation

The module catches problems before they happen:

  • File with a language code not enabled on your site? Rejected with a clear message.
  • Two files for the same language in one upload? Blocked immediately.
  • Invalid regex? The live tester tells you right away.

Translation publish status

Control how new translations are published:

  • Match source — inherits the published/unpublished status of the source entity
  • Always published
  • Always unpublished (draft) — for review workflows

Requirements

  • Drupal 11
  • Content Translation, Field UI, and Media (core modules)

Project information

Releases