本文整理匯總了PHP中Pimcore\Model\Object\Service::rewriteIds方法的典型用法代碼示例。如果您正苦於以下問題:PHP Service::rewriteIds方法的具體用法?PHP Service::rewriteIds怎麽用?PHP Service::rewriteIds使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Pimcore\Model\Object\Service
的用法示例。
在下文中一共展示了Service::rewriteIds方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: copyRewriteIdsAction
public function copyRewriteIdsAction()
{
$transactionId = $this->getParam("transactionId");
$idStore = Tool\Session::useSession(function ($session) use($transactionId) {
return $session->{$transactionId};
}, "pimcore_copy");
if (!array_key_exists("rewrite-stack", $idStore)) {
$idStore["rewrite-stack"] = array_values($idStore["idMapping"]);
}
$id = array_shift($idStore["rewrite-stack"]);
$object = Object::getById($id);
// create rewriteIds() config parameter
$rewriteConfig = array("object" => $idStore["idMapping"]);
$object = Object\Service::rewriteIds($object, $rewriteConfig);
$object->setUserModification($this->getUser()->getId());
$object->save();
// write the store back to the session
Tool\Session::useSession(function ($session) use($transactionId, $idStore) {
$session->{$transactionId} = $idStore;
}, "pimcore_copy");
$this->_helper->json(array("success" => true, "id" => $id));
}
示例2: replaceAssignmentsAction
public function replaceAssignmentsAction()
{
$success = false;
$message = "";
$element = Element\Service::getElementById($this->getParam("type"), $this->getParam("id"));
$sourceEl = Element\Service::getElementById($this->getParam("sourceType"), $this->getParam("sourceId"));
$targetEl = Element\Service::getElementById($this->getParam("targetType"), $this->getParam("targetId"));
if ($element && $sourceEl && $targetEl && $this->getParam("sourceType") == $this->getParam("targetType") && $sourceEl->getType() == $targetEl->getType()) {
$rewriteConfig = [$this->getParam("sourceType") => [$sourceEl->getId() => $targetEl->getId()]];
if ($element instanceof Document) {
$element = Document\Service::rewriteIds($element, $rewriteConfig);
} elseif ($element instanceof Object\AbstractObject) {
$element = Object\Service::rewriteIds($element, $rewriteConfig);
} elseif ($element instanceof Asset) {
$element = Asset\Service::rewriteIds($element, $rewriteConfig);
}
$element->setUserModification($this->getUser()->getId());
$element->save();
$success = true;
} else {
$message = "source-type and target-type do not match";
}
$this->_helper->json(["success" => $success, "message" => $message]);
}