Изменение родителя страницы с помощью API — различия между версиями
Материал из Umicms
Alexei (обсуждение | вклад) |
Alexei (обсуждение | вклад) |
||
Строка 7: | Строка 7: | ||
%custom changeParentId()% — изменяет родителя страницы. | %custom changeParentId()% — изменяет родителя страницы. | ||
− | '''Параметры: custom changeParentId($pageId, $newParentId | + | '''Параметры''': custom changeParentId('''$pageId, $newParentId''') |
'''$pageId''' | '''$pageId''' |
Текущая версия на 06:52, 15 марта 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);
}