class SkippablePathBasedBreadcrumbBuilder
A path-based breadcrumb builder can be skipped from applying.
Hierarchy
- class \Drupal\menu_test\SkippablePathBasedBreadcrumbBuilder implements \Drupal\Core\Breadcrumb\BreadcrumbBuilderInterface
Expanded class hierarchy of SkippablePathBasedBreadcrumbBuilder
File
-
core/
modules/ system/ tests/ modules/ menu_test/ src/ SkippablePathBasedBreadcrumbBuilder.php, line 16
Namespace
Drupal\menu_testView source
class SkippablePathBasedBreadcrumbBuilder implements BreadcrumbBuilderInterface {
public function __construct(BreadcrumbBuilderInterface $pathBasedBreadcrumbBuilder, RequestStack $requestStack) {
}
/**
* {@inheritdoc}
*/
public function applies(RouteMatchInterface $route_match, ?CacheableMetadata $cacheable_metadata = NULL) : bool {
$query_arg = 'menu_test_skip_breadcrumbs';
$cacheable_metadata?->addCacheContexts([
'url.query_args:' . $query_arg,
]);
// Apply unless the query argument is present.
return !$this->requestStack
->getCurrentRequest()->query
->has($query_arg);
}
/**
* {@inheritdoc}
*/
public function build(RouteMatchInterface $route_match) : Breadcrumb {
return $this->pathBasedBreadcrumbBuilder
->build($route_match);
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
SkippablePathBasedBreadcrumbBuilder::applies | public | function | Whether this breadcrumb builder should be used to build the breadcrumb. | Overrides BreadcrumbBuilderInterface::applies |
SkippablePathBasedBreadcrumbBuilder::build | public | function | Builds the breadcrumb. | Overrides BreadcrumbBuilderInterface::build |
SkippablePathBasedBreadcrumbBuilder::__construct | public | function |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.