Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::toLink()
  2. 9 core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::toLink()

Generates the HTML for a link to this entity.

Parameters

string|null|array|\Drupal\Component\Render\MarkupInterface $text: (optional) The link text for the anchor tag as a translated string or render array. If NULL, it will use the entity's label. Defaults to NULL.

string $rel: (optional) The link relationship type. Defaults to 'canonical'.

array $options: See \Drupal\Core\Routing\UrlGeneratorInterface::generateFromRoute() for the available options.

Return value

\Drupal\Core\Link A Link to the entity.

Throws

\Drupal\Core\Entity\EntityMalformedException

\Drupal\Core\Entity\Exception\UndefinedLinkTemplateException

Overrides EntityInterface::toLink

File

core/lib/Drupal/Core/Entity/EntityBase.php, line 255

Class

EntityBase
Defines a base entity class.

Namespace

Drupal\Core\Entity

Code

public function toLink($text = NULL, $rel = 'canonical', array $options = []) {
  if (!isset($text)) {
    $text = $this
      ->label();
  }
  $url = $this
    ->toUrl($rel);
  $options += $url
    ->getOptions();
  $url
    ->setOptions($options);
  return new Link($text, $url);
}