function MenuLinkContentHooks::updatePathAlias

Same name and namespace in other branches
  1. main core/modules/menu_link_content/src/Hook/MenuLinkContentHooks.php \Drupal\menu_link_content\Hook\MenuLinkContentHooks::updatePathAlias()

Helper function to update plugin definition using internal scheme.

Parameters

string $path: The path alias.

3 calls to MenuLinkContentHooks::updatePathAlias()
MenuLinkContentHooks::pathAliasDelete in core/modules/menu_link_content/src/Hook/MenuLinkContentHooks.php
Implements hook_ENTITY_TYPE_delete() for 'path_alias'.
MenuLinkContentHooks::pathAliasInsert in core/modules/menu_link_content/src/Hook/MenuLinkContentHooks.php
Implements hook_ENTITY_TYPE_insert() for 'path_alias'.
MenuLinkContentHooks::pathAliasUpdate in core/modules/menu_link_content/src/Hook/MenuLinkContentHooks.php
Implements hook_ENTITY_TYPE_update() for 'path_alias'.

File

core/modules/menu_link_content/src/Hook/MenuLinkContentHooks.php, line 144

Class

MenuLinkContentHooks
Hook implementations for menu_link_content.

Namespace

Drupal\menu_link_content\Hook

Code

protected function updatePathAlias(string $path) : void {
  /** @var \Drupal\menu_link_content\MenuLinkContentInterface[] $entities */
  $entities = $this->entityTypeManager
    ->getStorage('menu_link_content')
    ->loadByProperties([
    'link.uri' => 'internal:' . $path,
  ]);
  foreach ($entities as $menu_link) {
    $this->menuLinkManager
      ->updateDefinition($menu_link->getPluginId(), $menu_link->getPluginDefinition(), FALSE);
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.