Изменение родителя страницы с помощью API — различия между версиями
Материал из Umicms
Alexei (обсуждение | вклад) (Новая страница: «'''Актуально для версии 2.9.5''' == Задача == Если вы столкнулись с данной задачей, то ее можно ре…») |
Alexei (обсуждение | вклад) |
||
Строка 20: | Строка 20: | ||
<source lang="php"> | <source lang="php"> | ||
public function changeParentId($pageId, $newParentId) { | public function changeParentId($pageId, $newParentId) { | ||
− | + | $hierarchy = umiHierarchy::getInstance(); | |
− | + | $page = $hierarchy->getElement($pageId); | |
− | + | $page -> setRel($newParentId); | |
− | + | $page -> commit(); | |
− | + | $hierarchy->rebuildRelationNodes($newParentId); | |
} | } | ||
</source> | </source> | ||
== Способ 2 == | == Способ 2 == | ||
+ | |||
+ | %custom changeParentId()% — изменяет родителя страницы. | ||
+ | |||
+ | '''Параметры: custom changeParentId($pageId, $newParentId)''' | ||
+ | |||
+ | '''$pageId''' | ||
+ | Передаем id страницы, у которой нужно изменить родителя. | ||
+ | '''$newParentId''' | ||
+ | Передаем id нового родителя страницы. | ||
+ | |||
+ | Для применения этого макроса скопируйте код макроса в файл /classes/modules/custom.php. | ||
+ | |||
+ | == Код макроса == | ||
+ | |||
+ | <source lang="php"> | ||
+ | public function changeParentId($pageId, $newParentId) { | ||
+ | $hierarchy = umiHierarchy::getInstance()->moveBefore($pageId, $newParentId); | ||
+ | } | ||
+ | </source> | ||
[[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]][[Категория:API]] | [[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]][[Категория:API]] |
Версия 13:46, 28 февраля 2014
Актуально для версии 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);
}