public function UltimenuTree::loadSubMenuTree in Ultimenu 8.2
Returns a list of submenu links based on the menu name.
Parameters
string $menu_name: The menu name.
string $link_id: The link ID.
string $title: The link title.
Return value
array An array of the requested submenu links.
Overrides UltimenuTreeInterface::loadSubMenuTree
File
- src/
UltimenuTree.php, line 109
Class
- UltimenuTree
- Provides Ultimenu utility methods.
Namespace
Drupal\ultimenuCode
public function loadSubMenuTree($menu_name, $link_id, $title = '') {
$build = [];
$level = 1;
$depth = 4;
$parameters = $this->menuTree
->getCurrentRouteMenuTreeParameters($menu_name);
$parameters
->setRoot($link_id)
->excludeRoot()
->onlyEnabledLinks();
$parameters
->setMaxDepth(min($level + $depth - 1, $this->menuTree
->maxDepth()));
$tree = $this->menuTree
->load($menu_name, $parameters);
$manipulators = [
[
'callable' => 'menu.default_tree_manipulators:checkAccess',
],
[
'callable' => 'menu.default_tree_manipulators:generateIndexAndSort',
],
];
$tree = $this->menuTree
->transform($tree, $manipulators);
if ($tree) {
$build['content'] = $this->menuTree
->build($tree);
$css_name = Html::cleanCssIdentifier(mb_strtolower($menu_name . '-' . $title));
$build['#attributes']['class'] = [
'ultimenusub',
'ultimenusub--' . $css_name,
];
$build['#theme_wrappers'][] = 'container';
}
return $build;
}