This repository has been archived on 2025-01-19. You can view files and clone it, but cannot push or open issues or pull requests.
drupalcampbristol/vendor/chi-teck/drupal-code-generator/templates/d8/service/breadcrumb-builder.twig
2018-11-23 12:29:20 +00:00

47 lines
1.1 KiB
Twig

<?php
namespace Drupal\{{ machine_name }};
use Drupal\Core\Breadcrumb\Breadcrumb;
use Drupal\Core\Breadcrumb\BreadcrumbBuilderInterface;
use Drupal\Core\Link;
use Drupal\Core\Routing\RouteMatchInterface;
use Drupal\Core\StringTranslation\StringTranslationTrait;
use Drupal\node\NodeInterface;
/**
* Provides a breadcrumb builder for articles.
*/
class {{ class }} implements BreadcrumbBuilderInterface {
use StringTranslationTrait;
/**
* {@inheritdoc}
*/
public function applies(RouteMatchInterface $route_match) {
$node = $route_match->getParameter('node');
return $node instanceof NodeInterface && $node->getType() == 'article';
}
/**
* {@inheritdoc}
*/
public function build(RouteMatchInterface $route_match) {
$breadcrumb = new Breadcrumb();
$links[] = Link::createFromRoute($this->t('Home'), '<front>');
// Articles page is a view.
$links[] = Link::createFromRoute($this->t('Articles'), 'view.articles.page_1');
$node = $route_match->getParameter('node');
$links[] = Link::createFromRoute($node->label(), '<none>');
$breadcrumb->setLinks($links);
return $breadcrumb;
}
}