protected DefaultMenuLinkTreeManipulators::collectNodeLinks(array &$tree, array &$node_links)
Collects the node links in the menu tree.
Parameters
\Drupal\Core\Menu\MenuLinkTreeElement[] $tree: The menu link tree to manipulate.
array $node_links: Stores references to menu link elements to effectively set access.
Return value
\Drupal\Core\Menu\MenuLinkTreeElement[] The manipulated menu link tree.
File
- core/lib/Drupal/Core/Menu/DefaultMenuLinkTreeManipulators.php, line 175
Class
- DefaultMenuLinkTreeManipulators
- Provides a couple of menu link tree manipulators.
Namespace
Drupal\Core\Menu
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 | protected function collectNodeLinks( array & $tree , array & $node_links ) { foreach ( $tree as $key => & $element ) { if ( $element ->link->getRouteName() == 'entity.node.canonical' ) { $nid = $element ->link->getRouteParameters()[ 'node' ]; $node_links [ $nid ][ $key ] = $element ; // Deny access by default. checkNodeAccess() will re-add it. $element ->access = AccessResult::neutral(); } if ( $element ->hasChildren) { $this ->collectNodeLinks( $element ->subtree, $node_links ); } } } |
Please login to continue.