You are here

public function RenderedEntity::render in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/views/src/Plugin/views/field/RenderedEntity.php \Drupal\views\Plugin\views\field\RenderedEntity::render()

Renders the field.

Parameters

\Drupal\views\ResultRow $values: The values retrieved from a single row of a view's query result.

Return value

string|\Drupal\Component\Render\MarkupInterface The rendered output. If the output is safe it will be wrapped in an object that implements MarkupInterface. If it is empty or unsafe it will be a string.

Overrides FieldPluginBase::render

File

core/modules/views/src/Plugin/views/field/RenderedEntity.php, line 131

Class

RenderedEntity
Provides a field handler which renders an entity in a certain view mode.

Namespace

Drupal\views\Plugin\views\field

Code

public function render(ResultRow $values) {
  $entity = $this
    ->getEntityTranslation($this
    ->getEntity($values), $values);
  $build = [];
  if (isset($entity)) {
    $access = $entity
      ->access('view', NULL, TRUE);
    $build['#access'] = $access;
    if ($access
      ->isAllowed()) {
      $view_builder = $this->entityTypeManager
        ->getViewBuilder($this
        ->getEntityTypeId());
      $build += $view_builder
        ->view($entity, $this->options['view_mode'], $entity
        ->language()
        ->getId());
    }
  }
  return $build;
}