Изменение родителя страницы с помощью API
Материал из Umicms
Актуально для версии 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); 			
		}
