function PageActions::build
Overrides TopBarItemBase::build
File
-
core/
modules/ navigation/ src/ Plugin/ TopBarItem/ PageActions.php, line 69
Class
- PageActions
- Provides the Page Actions basic top bar item.
Namespace
Drupal\navigation\Plugin\TopBarItemCode
public function build() : array {
$build = [
'#cache' => [
'contexts' => [
'route',
],
],
];
// Local tasks for content entities.
if (!$this->navigationRenderer
->hasLocalTasks()) {
return $build;
}
$page_actions = $this->navigationRenderer
->getLocalTasks();
$featured_page_actions = $this->getFeaturedPageActions($page_actions);
// Filter actions to exclude featured ones from the main array.
$page_actions['page_actions'] = array_filter($page_actions['page_actions'], static fn($action_route) => !array_key_exists($action_route, $featured_page_actions), ARRAY_FILTER_USE_KEY);
$build += [
'#theme' => 'top_bar_page_actions',
'#page_actions' => $page_actions['page_actions'],
'#featured_page_actions' => $featured_page_actions,
];
assert($page_actions['cacheability'] instanceof CacheableMetadata);
$page_actions['cacheability']->applyTo($build);
return $build;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.