- last update
over 1 year ago Patch Failed to Apply - 🇨🇴Colombia jabonillac@gmail.com
Adding an updated patch version with D10 support.
- last update
over 1 year ago Patch Failed to Apply
Some times ago, a bug was fixed with token, when a node was saved for the first time:
https://www.drupal.org/project/token/issues/2670120 →
The patch contains this code:
if ($node->isNew()) {
// Create a new menu_link_content entity.
$entity = MenuLinkContent::create([
// Lets just reference the UUID for now, the link is not important for
// token generation.
'link' => ['uri' => 'internal:/node/' . $node->uuid()],
'langcode' => $node->language()->getId(),
]);
}
else {
// Create a new menu_link_content entity.
$entity = MenuLinkContent::create([
'link' => ['uri' => 'entity:node/' . $node->id()],
'langcode' => $node->language()->getId(),
]);
}
The first, time, a node is saved, a menu item is created with the following URI:
"internal:/node/2f6c9f74-4a41-4366-b2b8-69d6a93fa798"
If you want to edit such a menu item, you will get a fatal error unless you have applied the following patch in Drupal core:
"patches": {
"drupal/core": {
"Menu Link UUID": "https://www.drupal.org/files/issues/2019-01-07/drupal-link_uuid-2353611-248-d8.patch"
},
}
This patch will allow the used url format "internal:/node/{uuid}".
But then you will run in another issue: The second time you edit the node, the reference to the menu link is completly lost.
The menu ui module has the following code to find the corresponding menu item:
// Check all allowed menus if a link does not exist in the default menu.
if (!$id && !empty($type_menus)) {
$query = \Drupal::entityQuery('menu_link_content')
->condition('link.uri', 'entity:node/' . $node->id())
->condition('menu_name', array_values($type_menus), 'IN')
->sort('id', 'ASC')
->range(0, 1);
$result = $query->execute();
$id = (!empty($result)) ? reset($result) : FALSE;
}
As you can see, the new temporary url format is not supported. To fix this, I created an additional patch.
Only with these two patches, you will be able to use to menu tokens on nodes working the first time and not being deleted the second time a node is saved.
Needs review
1.0
Code
Not all content is available!
It's likely this issue predates Contrib.social: some issue and comment data are missing.
Adding an updated patch version with D10 support.