Я хочу изменить родительский элемент дерева меню при обновлении узла.Я использую модуль с именем «rules» для доступа к событию обновления, и у меня есть следующий код:
if ($node->taxonomy[1] == "1") {
$plid = 440;
} else if ($node->taxonomy[1] == "2") {
$plid = 379;
}
if($plid) {
db_query("UPDATE {menu_links} SET plid='".$plid."', p1='".$plid."' WHERE link_path='"."node/".$node->nid."'");
}
Проблема в том, что у этого $ узла, который обновляется, также есть некоторые дочерние элементы меню под нимв главном меню и когда я обновляю узел, чтобы сменить родителя, его дочерние элементы просто оказываются на один уровень выше и не перемещаются с текущим пунктом меню.Есть ли простой способ переместить все дерево меню из одного родительского пункта меню в другой?
Я хочу это,
- parent1
-- child1
--- sub-child1
--- sub-child2
- parent2
быть таким:
- parent1
- parent2
- child1
--- sub-child1
--- sub-child2
Можете ли вы мне помочь? Есть ли способ сделать это на Drupal?=)
Я знаю, что этот код делает много предположений, но он мне нужен только для одного конкретного случая