I have a node. I render it like this:
$render_controller = \Drupal::entityManager()->getViewBuilder($node->getEntityTypeId()); $render_output = $render_controller->view($node); echo \Drupal::service("renderer")->render($render_output);
The rendered field labels are always in the original language ("de"). Even if I use this before:
I find it really excruciatingly difficult to get translated labels to render properly. I've searched through the source code all the way from back to front to find an answer. I see my translated field label in the frontend under "/admin/config/regional/config-translation/node_fields" so it must be stored somewhere. But how do I access it or even better render the whole field correctly? Using $field->getLabel() etc didn't help either. And neither did $language_manager->setConfigOverrideLanguage($language); Somehow Drupal must think it's very clever and uses some default language I don't want. I want to pick a specific language and render that. And I would expect that using getTranslation() on the node really gives you everything in the right language. Somehow it doesn't. Why?