class HelpBreadcrumbBuilder

Provides a breadcrumb builder for help topic pages.

@internal Tagged services are internal.

Hierarchy

Expanded class hierarchy of HelpBreadcrumbBuilder

1 string reference to 'HelpBreadcrumbBuilder'
help.services.yml in core/modules/help/help.services.yml
core/modules/help/help.services.yml
1 service uses HelpBreadcrumbBuilder
help.breadcrumb in core/modules/help/help.services.yml
Drupal\help\HelpBreadcrumbBuilder

File

core/modules/help/src/HelpBreadcrumbBuilder.php, line 18

Namespace

Drupal\help
View source
class HelpBreadcrumbBuilder implements BreadcrumbBuilderInterface {
  
  /**
   * {@inheritdoc}
   */
  public function applies(RouteMatchInterface $route_match, ?CacheableMetadata $cacheable_metadata = NULL) {
    // @todo Remove null safe operator in Drupal 12.0.0, see
    //   https://www.drupal.org/project/drupal/issues/3459277.
    $cacheable_metadata?->addCacheContexts([
      'route',
    ]);
    return $route_match->getRouteName() == 'help.help_topic';
  }
  
  /**
   * {@inheritdoc}
   */
  public function build(RouteMatchInterface $route_match) {
    $breadcrumb = new Breadcrumb();
    $breadcrumb->addCacheContexts([
      'url.path.parent',
    ]);
    $breadcrumb->addLink(Link::createFromRoute(new TranslatableMarkup('Home'), '<front>'));
    $breadcrumb->addLink(Link::createFromRoute(new TranslatableMarkup('Administration'), 'system.admin'));
    $breadcrumb->addLink(Link::createFromRoute(new TranslatableMarkup('Help'), 'help.main'));
    return $breadcrumb;
  }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title
HelpBreadcrumbBuilder::applies public function Whether this breadcrumb builder should be used to build the breadcrumb. Overrides BreadcrumbBuilderInterface::applies
HelpBreadcrumbBuilder::build public function Builds the breadcrumb. Overrides BreadcrumbBuilderInterface::build

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.