Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. MenuLinkManager.php

function MenuLinkManager::resetInstance

Resets the menu link to its default settings.

Parameters

\Drupal\Core\Menu\MenuLinkInterface $instance: The menu link which should be reset.

Return value

\Drupal\Core\Menu\MenuLinkInterface The reset menu link.

Throws

\Drupal\Component\Plugin\Exception\PluginException Thrown when the menu link is not resettable.

2 calls to MenuLinkManager::resetInstance()
MenuLinkManager::deleteLinksInMenu in core/lib/Drupal/Core/Menu/MenuLinkManager.php
Deletes all links having a certain menu name.
MenuLinkManager::resetLink in core/lib/Drupal/Core/Menu/MenuLinkManager.php
Resets the values for a menu link based on the values found by discovery.

File

core/lib/Drupal/Core/Menu/MenuLinkManager.php, line 355

Class

MenuLinkManager
Manages discovery, instantiation, and tree building of menu link plugins.

Namespace

Drupal\Core\Menu

Code

protected function resetInstance(MenuLinkInterface $instance) {
    $id = $instance->getPluginId();
    if (!$instance->isResettable()) {
        throw new PluginException("Menu link {$id} is not resettable");
    }
    // Get the original data from disk, reset the override and re-save the menu
    // tree for this link.
    $definition = $this->getDefinitions()[$id];
    $this->overrides
        ->deleteOverride($id);
    $this->treeStorage
        ->save($definition);
    return $this->createInstance($id);
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal