class PathBasedBreadcrumbBuilder implements BreadcrumbBuilderInterface (View source)

Class to define the menu_link breadcrumb builder.

Traits

Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.

Properties

protected TranslationInterface $stringTranslation

The string translation service.

from  StringTranslationTrait
protected RequestContext $context

The router request context.

protected AccessManagerInterface $accessManager

The menu link access service.

protected RequestMatcherInterface $router

The dynamic router service.

protected InboundPathProcessorInterface $pathProcessor

The inbound path processor.

protected Config $config

Site config object.

protected TitleResolverInterface $titleResolver

The title resolver.

protected AccountInterface $currentUser

The current user object.

protected CurrentPathStack $currentPath

The current path service.

protected PathMatcherInterface $pathMatcher

The patch matcher service.

Methods

t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

getStringTranslation()

Gets the string translation service.

$this
setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

__construct(RequestContext $context, AccessManagerInterface $access_manager, RequestMatcherInterface $router, InboundPathProcessorInterface $path_processor, ConfigFactoryInterface $config_factory, TitleResolverInterface $title_resolver, AccountInterface $current_user, CurrentPathStack $current_path, PathMatcherInterface $path_matcher = NULL)

Constructs the PathBasedBreadcrumbBuilder.

bool
applies(RouteMatchInterface $route_match)

Whether this breadcrumb builder should be used to build the breadcrumb.

build(RouteMatchInterface $route_match)

Builds the breadcrumb.

Request
getRequestForPath(string $path, array $exclude)

Matches a path in the router.

Details

protected TranslatableMarkup t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.

In order for strings to be localized, make them available in one of the ways supported by the

Parameters

string $string

A string containing the English text to translate.

array $args

(optional) An associative array of replacements to make after translation. Based on the first character of the key, the value is escaped and/or themed. See \Drupal\Component\Render\FormattableMarkup::placeholderFormat() for details.

array $options

(optional) An associative array of additional options, with the following elements:

  • 'langcode' (defaults to the current language): A language code, to translate to a language other than what is used to display the page.
  • 'context' (defaults to the empty context): The context the source string belongs to. See the @link i18n Internationalization topic @endlink for more information about string contexts.

Return Value

TranslatableMarkup

An object that, when cast to a string, returns the translated string.

See also

FormattableMarkup::placeholderFormat
TranslatableMarkup::__construct

protected formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

Parameters

$count
$singular
$plural
array $args
array $options

See also

TranslationInterface::formatPlural

protected getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

Parameters

$langcode

See also

PluralFormulaInterface::getNumberOfPlurals

protected TranslationInterface getStringTranslation()

Gets the string translation service.

Return Value

TranslationInterface

The string translation service.

$this setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

Parameters

TranslationInterface $translation

The string translation service.

Return Value

$this

__construct(RequestContext $context, AccessManagerInterface $access_manager, RequestMatcherInterface $router, InboundPathProcessorInterface $path_processor, ConfigFactoryInterface $config_factory, TitleResolverInterface $title_resolver, AccountInterface $current_user, CurrentPathStack $current_path, PathMatcherInterface $path_matcher = NULL)

Constructs the PathBasedBreadcrumbBuilder.

Parameters

RequestContext $context

The router request context.

AccessManagerInterface $access_manager

The menu link access service.

RequestMatcherInterface $router

The dynamic router service.

InboundPathProcessorInterface $path_processor

The inbound path processor.

ConfigFactoryInterface $config_factory

The config factory service.

TitleResolverInterface $title_resolver

The title resolver service.

AccountInterface $current_user

The current user object.

CurrentPathStack $current_path

The current path.

PathMatcherInterface $path_matcher

The path matcher service.

bool applies(RouteMatchInterface $route_match)

Whether this breadcrumb builder should be used to build the breadcrumb.

Parameters

RouteMatchInterface $route_match

The current route match.

Return Value

bool

TRUE if this builder should be used or FALSE to let other builders decide.

Breadcrumb build(RouteMatchInterface $route_match)

Builds the breadcrumb.

Parameters

RouteMatchInterface $route_match

The current route match.

Return Value

Breadcrumb

A breadcrumb.

protected Request getRequestForPath(string $path, array $exclude)

Matches a path in the router.

Parameters

string $path

The request path with a leading slash.

array $exclude

An array of paths or system paths to skip.

Return Value

Request

A populated request object or NULL if the path couldn't be matched.