Pimcore\Model\Document\Service::loadAllDocumentFields PHP Method

loadAllDocumentFields() public static method

public static loadAllDocumentFields ( $doc ) : mixed
$doc
return mixed
    public static function loadAllDocumentFields($doc)
    {
        $doc->getProperties();
        if ($doc instanceof Document\PageSnippet) {
            foreach ($doc->getElements() as $name => $data) {
                if (method_exists($data, "load")) {
                    $data->load();
                }
            }
        }
        return $doc;
    }

Usage Example

Exemplo n.º 1
0
 /**
  * @param $id
  * @throws \Exception
  */
 public function getDocumentSnippetById($id)
 {
     try {
         $snippet = Document::getById($id);
         if ($snippet instanceof Document\Snippet) {
             // load all data (eg. href, snippet, ... which are lazy loaded)
             Document\Service::loadAllDocumentFields($snippet);
             $className = Webservice\Data\Mapper::findWebserviceClass($snippet, "out");
             $apiSnippet = Webservice\Data\Mapper::map($snippet, $className, "out");
             return $apiSnippet;
         }
         throw new \Exception("Document Snippet with given ID (" . $id . ") does not exist.");
     } catch (\Exception $e) {
         \Logger::error($e);
         throw $e;
     }
 }
All Usage Examples Of Pimcore\Model\Document\Service::loadAllDocumentFields