本文整理汇总了PHP中Pimcore\Model\Object\AbstractObject::getByPath方法的典型用法代码示例。如果您正苦于以下问题:PHP AbstractObject::getByPath方法的具体用法?PHP AbstractObject::getByPath怎么用?PHP AbstractObject::getByPath使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pimcore\Model\Object\AbstractObject
的用法示例。
在下文中一共展示了AbstractObject::getByPath方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: makeParticipation
/**
* @return AbstractObject|\Pimcore\Model\Object\Participation
* @throws \Exception
*/
public function makeParticipation()
{
$objectFolderPath = Plugin::getConfig()->get(Plugin::CONFIG_OBJECTFOLDERPATH);
$objectFolder = AbstractObject::getByPath($objectFolderPath);
if (!$objectFolder instanceof Folder) {
throw new \Exception("Error: objectFolderPath [{$objectFolderPath}] " . "is not a valid object folder.");
}
// create basic object stuff
$key = $this->createParticipationKey();
$participation = new Participation();
$participation->setKey($key);
$participation->setParent($objectFolder);
$participation->setPublished(true);
$participation->setCreationDate(time());
$participation->SetIpCreated($_SERVER['REMOTE_ADDR']);
$confirmation = $this->makeConfirmation();
$participation->setConfirmationCode($confirmation->createCode());
return $participation;
}
示例2: getSaveCopyName
/**
* @param $element
* @param $key
* @param $path
* @return string
*/
protected function getSaveCopyName($element, $key, $path)
{
if ($element instanceof Object\AbstractObject) {
$equal = Object\AbstractObject::getByPath($path . "/" . $key);
} else {
if ($element instanceof Document) {
$equal = Document::getByPath($path . "/" . $key);
} else {
if ($element instanceof Asset) {
$equal = Asset::getByPath($path . "/" . $key);
}
}
}
if ($equal) {
$key .= "_WScopy";
return $this->getSaveCopyName($element, $key, $path);
}
return $key;
}
示例3: correctPath
public function correctPath()
{
// set path
if ($this->getId() != 1) {
// not for the root node
if ($this->getParentId() == $this->getId()) {
throw new \Exception("ParentID and ID is identical, an element can't be the parent of itself.");
}
$parent = AbstractObject::getById($this->getParentId());
if ($parent) {
// use the parent's path from the database here (getCurrentFullPath), to ensure the path really exists and does not rely on the path
// that is currently in the parent object (in memory), because this might have changed but wasn't not saved
$this->setPath(str_replace("//", "/", $parent->getCurrentFullPath() . "/"));
} else {
// parent document doesn't exist anymore, set the parent to to root
$this->setParentId(1);
$this->setPath("/");
}
if (strlen($this->getKey()) < 1) {
$this->setKey("---no-valid-key---" . $this->getId());
throw new \Exception("Document requires key, generated key automatically");
}
} else {
if ($this->getId() == 1) {
// some data in root node should always be the same
$this->setParentId(0);
$this->setPath("/");
$this->setKey("");
$this->setType("folder");
}
}
if (Service::pathExists($this->getFullPath())) {
$duplicate = AbstractObject::getByPath($this->getFullPath());
if ($duplicate instanceof self and $duplicate->getId() != $this->getId()) {
throw new \Exception("Duplicate full path [ " . $this->getFullPath() . " ] - cannot save object");
}
}
if (strlen($this->getFullPath()) > 765) {
throw new \Exception("Full path is limited to 765 characters, reduce the length of your parent's path");
}
}
示例4: createObjects
private static function createObjects()
{
try {
$objectFolder = AbstractObject::getByPath(Plugin::CONFIG_OBJECTFOLDERPATH_DEFAULT);
if (!is_object($objectFolder)) {
$objectFolder = new Folder();
$objectFolder->setKey(basename(Plugin::CONFIG_OBJECTFOLDERPATH_DEFAULT));
$objectFolder->setParent(AbstractObject::getByPath(dirname(Plugin::CONFIG_OBJECTFOLDERPATH_DEFAULT)));
$objectFolder->save();
}
if (!$objectFolder instanceof Folder) {
throw new \Exception('Can not use object path [' . Plugin::CONFIG_OBJECTFOLDERPATH_DEFAULT . '] as default participation folder.');
}
} catch (\Exception $exception) {
throw new \Exception('Unable to create/use participation folder [' . Plugin::CONFIG_OBJECTFOLDERPATH_DEFAULT . ']: ' . $exception->getMessage());
}
}