determines whether an element is published
public static isPublished ( Pimcore\Model\Element\ElementInterface $element = null ) : boolean | ||
$element | Pimcore\Model\Element\ElementInterface | |
리턴 | boolean |
public function preGetData($object, $params = array()) { $data = null; if ($object instanceof Object\Concrete) { $data = $object->{$this->getName()}; if ($this->getLazyLoading() and !in_array($this->getName(), $object->getO__loadedLazyFields())) { //$data = $this->getDataFromResource($object->getRelationData($this->getName(),true,null)); $data = $this->load($object, array("force" => true)); $setter = "set" . ucfirst($this->getName()); if (method_exists($object, $setter)) { $object->{$setter}($data); } } } else { if ($object instanceof Object\Localizedfield) { $data = $params["data"]; } else { if ($object instanceof Object\Fieldcollection\Data\AbstractData) { $data = $object->{$this->getName()}; } else { if ($object instanceof Object\Objectbrick\Data\AbstractData) { $data = $object->{$this->getName()}; } } } } if (Object\AbstractObject::doHideUnpublished() and is_array($data)) { $publishedList = array(); foreach ($data as $listElement) { if (Element\Service::isPublished($listElement)) { $publishedList[] = $listElement; } } return $publishedList; } return is_array($data) ? $data : array(); }
/** * @param $object * @param array $params * @return null|Object\Fieldcollection\Data\Object\Concrete|Object\Objectbrick\Data\ */ public function preGetData($object, $params = array()) { $data = null; if ($object instanceof Object\Concrete) { $data = $object->{$this->getName()}; if ($this->getLazyLoading() and !in_array($this->getName(), $object->getO__loadedLazyFields())) { $data = $this->load($object, array("force" => true)); $setter = "set" . ucfirst($this->getName()); if (method_exists($object, $setter)) { $object->{$setter}($data); } } } else { if ($object instanceof Object\Localizedfield) { $data = $params["data"]; } else { if ($object instanceof Object\Fieldcollection\Data\AbstractData) { $data = $object->{$this->getName()}; } else { if ($object instanceof Object\Objectbrick\Data\AbstractData) { $data = $object->{$this->getName()}; } } } } if (Object\AbstractObject::doHideUnpublished() and $data instanceof Element\ElementInterface) { if (!Element\Service::isPublished($data)) { return null; } } return $data; }
/** * Returns teh path of the linked element * * @return mixed */ public function getFullPath() { $this->setElement(); //don't give unpublished elements in frontend if (Document::doHideUnpublished() and !Element\Service::isPublished($this->element)) { return false; } if ($this->element instanceof Element\ElementInterface) { return $this->element->getFullPath(); } return; }