public function EntityLink::preRender in Drupal 8
Same name and namespace in other branches
- 9 core/modules/comment/src/Plugin/views/field/EntityLink.php \Drupal\comment\Plugin\views\field\EntityLink::preRender()
- 10 core/modules/comment/src/Plugin/views/field/EntityLink.php \Drupal\comment\Plugin\views\field\EntityLink::preRender()
Runs before any fields are rendered.
This gives the handlers some time to set up before any handler has been rendered.
Parameters
\Drupal\views\ResultRow[] $values: An array of all ResultRow objects returned from the query.
Overrides FieldPluginBase::preRender
File
- core/modules/ comment/ src/ Plugin/ views/ field/ EntityLink.php, line 56 
Class
- EntityLink
- Handler for showing comment module's entity links.
Namespace
Drupal\comment\Plugin\views\fieldCode
public function preRender(&$values) {
  // Render all nodes, so you can grep the comment links.
  $entities = [];
  foreach ($values as $row) {
    $entity = $row->_entity;
    $entities[$entity
      ->id()] = $entity;
  }
  if ($entities) {
    $entityTypeId = reset($entities)
      ->getEntityTypeId();
    $viewMode = $this->options['teaser'] ? 'teaser' : 'full';
    $this->build = \Drupal::entityTypeManager()
      ->getViewBuilder($entityTypeId)
      ->viewMultiple($entities, $viewMode);
  }
}