Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. EntityTranslationRenderTrait.php

function EntityTranslationRenderTrait::getEntityTranslationRenderer

Returns the current renderer.

Return value

\Drupal\views\Entity\Render\EntityTranslationRendererBase The configured renderer.

File

core/modules/views/src/Entity/Render/EntityTranslationRenderTrait.php, line 28

Class

EntityTranslationRenderTrait
Trait used to instantiate the view's entity translation renderer.

Namespace

Drupal\views\Entity\Render

Code

protected function getEntityTranslationRenderer() {
    if (!isset($this->entityTranslationRenderer)) {
        $view = $this->getView();
        $rendering_language = $view->display_handler
            ->getOption('rendering_language');
        $langcode = NULL;
        $dynamic_renderers = [
            '***LANGUAGE_entity_translation***' => 'TranslationLanguageRenderer',
            '***LANGUAGE_entity_default***' => 'DefaultLanguageRenderer',
        ];
        $entity_type = $this->getEntityTypeManager()
            ->getDefinition($this->getEntityTypeId());
        if (isset($dynamic_renderers[$rendering_language])) {
            // Dynamic language set based on result rows or instance defaults.
            $class = '\\Drupal\\views\\Entity\\Render\\' . $dynamic_renderers[$rendering_language];
            $this->entityTranslationRenderer = new $class($view, $this->getLanguageManager(), $entity_type);
        }
        else {
            if (str_contains($rendering_language, '***LANGUAGE_')) {
                $langcode = PluginBase::queryLanguageSubstitutions()[$rendering_language];
            }
            else {
                // Specific langcode set.
                $langcode = $rendering_language;
            }
            $this->entityTranslationRenderer = new ConfigurableLanguageRenderer($view, $this->getLanguageManager(), $entity_type, $langcode);
        }
    }
    return $this->entityTranslationRenderer;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal