In my Drupal 8 project I have some list fields. For example maybe a field "project type" with the following key|values, coming from the original language German:

1 -> öffentliches Projekt
2 -> privates Projekt

Which I translated in the field's settings:

1 -> public project
2 -> private project

The field is NOT set to be translatable because the value should not be changed in a translation: the project type is in all languages the same! But now when I go to the node edit page, when I view the node or when I add this field as exposed filter to views I always see the German values of the field no matter what is set as the current language of the page. When I change the field to be translatable the value of the list field can be changed in English translation -> so it can come that a project is "public" in German and "private" in English what is not the desired result.

How do I get the translated values of a list field to be used in form element and node view when the list field itself should not be translatable?

  • You always enter the English strings/labels only in the field config, then display the form at least once in German, and after that go to interface translation and translate them to German. I think.
    – leymannx
    Nov 11, 2020 at 13:03

1 Answer 1


Ok, it seems that it was just a weird cache thing. I cleared the cache several times after changing these translations. Now the translated values of the select list appear without setting the field to be translatable.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.