This project is not covered by Drupal’s security advisory policy.
Overview of the field label (and description) translations of every bundle of
an entity type, one table per bundle, one column per language.
Compatible with Drupal 8.0+ up to Drupal 12.
Requirements
- Required:
field,language. - Optional:
views: the view label translations page.config_translation: translation links for fields and bundles.locale: translations of base fields defined in code, and the .po export.
Installation and permissions
- Enable the module:
drush en field_label_translations. - Grant the permissions to the roles that need them:
- View field label translations overview
(view field label translations): the field label translations page. - View Views label translations overview
(view views label translations): the Views label translations page.
- View field label translations overview
Translation links are shown only if the user has access to the target page,
e.g. with the Translate configuration or Translate interface text
permissions.
Usage
Open Configuration > Regional and language > Field label translations, or go
to the URL directly:
/admin/config/regional/field-label-translations/{entity_type_id}{entity_type_id} defaults to node. Any fieldable entity type works, e.g.taxonomy_term, user, media, commerce_product. Use the filter at the top to
switch entity type, or to show the base fields defined in code too
(?base_fields=1).
The tables
- The first row is the bundle label and its translations.
- The other rows are the fields, identified by their machine name in the first
column, and their type below it. - Each language cell shows the label, with the description below it.
Markers:
| Marker | Meaning |
|---|---|
| original (yellow) | The source language of the label. |
| missing (red) | No translation on this language. |
| description missing | The label is translated, but the description is not. |
| untranslatable (grey) | The label can't be translated, e.g. the config's source language is und/zxx, or the bundle has no bundle entity. |
| Orange row | Base field, or base field override. |
Hover links, which open in a new tab:
- First column: All translations opens the core Translate tab of the
field or bundle. It isn't shown for base fields defined in code. - Language cells: Add translation, Edit translation or
Edit original. For base fields defined in code, Translate interface
string opens the interface translation page filtered to that string and
language.
Suggestions
Missing translations of config labels show suggestions taken from the
existing config translations of the site: if the same text (in any of its
language versions) is translated elsewhere, e.g. a field label used in a view
too, that translation is suggested, with the number of occurrences. Hover a
suggestion to see where it comes from. English texts are looked up in the
interface translations too. Nothing is saved, copy the suggestion to the
translation form.
The suggestions are built from every config translation once, and cached
until a config or a config translation changes.
Base field overrides (e.g. a base field label changed on a bundle) are config.
They don't inherit the interface translations of the base field, and core has
no translation UI for them, so they have no links.
Views label translations overview
Configuration > Regional and language > Views label translations overview
lists the label and description translations of a view. Select a view in the
dropdown, or go to the URL directly:
/admin/config/regional/view-label-translations/{view_id}Below the view label, each display has its own table with the texts it
defines itself (inherited ones are listed under the default display):
- the display title,
- the menu link title and description of page displays, and the parent menu
link of default tabs, - field labels, and their rewrite texts: rewritten output, link title, prefix
and suffix, trim "more" link text, and no results text, - header, footer and no results area texts,
- exposed filter labels and descriptions, the labels of grouped filters and
their options, - exposed sort labels,
- exposed form texts: submit and reset button, sort labels, and the
"input required" text.
The list is a selection of the most important texts, not every translatable
text of a view is shown on purpose. For a complete translation, translate the
view on its Translate tab as usual.
HTML and other longer texts (rewrites, area texts) are shown as source code on
a grey background.
It requires the views module. The tables work the same way as the field
tables above. The translation links open the translation form of the whole
view on that language. With views_ui enabled, Edit original opens the
edit page of the display.
Exporting base field translations (.po)
The Export base field translations (.po) section at the bottom of the page
exports the labels and descriptions of the code-defined fields of the entity
type. It requires the locale module.
- Select the target language.
- Check Include already translated strings to export every string. Leave it
unchecked to export only the strings without a translation in that
language. - Click Export. You get
{entity_type_id}-base-fields.{langcode}.po. - Translate the file, then import it at Configuration > Regional and
language > User interface translation > Import.
Project information
- Project categories: Administration tools, Developer tools, Multilingual
2 sites report using this module
- Created by kaszarobert on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.


