CommentViewBuilder::getBuildDefaults

protected CommentViewBuilder::getBuildDefaults(EntityInterface $entity, $view_mode)

Provides entity-specific defaults to the build process.

Parameters

\Drupal\Core\Entity\EntityInterface $entity: The entity for which the defaults should be provided.

string $view_mode: The view mode that should be used.

Return value

array

Overrides EntityViewBuilder::getBuildDefaults

File

core/modules/comment/src/CommentViewBuilder.php, line 58

Class

CommentViewBuilder
View builder handler for comments.

Namespace

Drupal\comment

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
protected function getBuildDefaults(EntityInterface $entity, $view_mode) {
  $build = parent::getBuildDefaults($entity, $view_mode);
 
  /** @var \Drupal\comment\CommentInterface $entity */
  // Store a threading field setting to use later in self::buildComponents().
  $build['#comment_threaded'] = $entity->getCommentedEntity()
    ->getFieldDefinition($entity->getFieldName())
    ->getSetting('default_mode') === CommentManagerInterface::COMMENT_MODE_THREADED;
  // If threading is enabled, don't render cache individual comments, but do
  // keep the cacheability metadata, so it can bubble up.
  if ($build['#comment_threaded']) {
    unset($build['#cache']['keys']);
  }
 
  return $build;
}
doc_Drupal
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.