On this page
public function MenuLinkManager::getDefinitions
public MenuLinkManager::getDefinitions()Gets the definition of all plugins for this type.
Return value
mixed[] An array of plugin definitions (empty array if no definitions were found). Keys are plugin IDs.
Overrides DiscoveryInterface::getDefinitions
File
- core/lib/Drupal/Core/Menu/MenuLinkManager.php, line 164
Class
- MenuLinkManager
- Manages discovery, instantiation, and tree building of menu link plugins.
Namespace
Drupal\Core\MenuCode
public function getDefinitions() {
  // Since this function is called rarely, instantiate the discovery here.
  $definitions = $this->getDiscovery()->getDefinitions();
  $this->moduleHandler->alter('menu_links_discovered', $definitions);
  foreach ($definitions as $plugin_id => &$definition) {
    $definition['id'] = $plugin_id;
    $this->processDefinition($definition, $plugin_id);
  }
  // If this plugin was provided by a module that does not exist, remove the
  // plugin definition.
  // @todo Address what to do with an invalid plugin.
  //   https://www.drupal.org/node/2302623
  foreach ($definitions as $plugin_id => $plugin_definition) {
    if (!empty($plugin_definition['provider']) && !$this->moduleHandler->moduleExists($plugin_definition['provider'])) {
      unset($definitions[$plugin_id]);
    }
  }
  return $definitions;
}
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
 https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Menu!MenuLinkManager.php/function/MenuLinkManager::getDefinitions/8.1.x