Изменение родителя страницы с помощью API
Материал из Umicms
Версия от 13:46, 28 февраля 2014; Alexei (обсуждение | вклад)
Актуально для версии 2.9.5
Содержание
Задача
Если вы столкнулись с данной задачей, то ее можно решить двумя способами.
Способ 1
%custom changeParentId()% — изменяет родителя страницы.
Параметры: custom changeParentId($pageId, $newParentId)
$pageId
Передаем id страницы, у которой нужно изменить родителя.
$newParentId
Передаем id нового родителя страницы.
Для применения этого макроса скопируйте код макроса в файл /classes/modules/custom.php.
Код макроса
public function changeParentId($pageId, $newParentId) {
$hierarchy = umiHierarchy::getInstance();
$page = $hierarchy->getElement($pageId);
$page -> setRel($newParentId);
$page -> commit();
$hierarchy->rebuildRelationNodes($newParentId);
}
Способ 2
%custom changeParentId()% — изменяет родителя страницы.
Параметры: custom changeParentId($pageId, $newParentId)
$pageId
Передаем id страницы, у которой нужно изменить родителя.
$newParentId
Передаем id нового родителя страницы.
Для применения этого макроса скопируйте код макроса в файл /classes/modules/custom.php.
Код макроса
public function changeParentId($pageId, $newParentId) {
$hierarchy = umiHierarchy::getInstance()->moveBefore($pageId, $newParentId);
}