Пример #1
0
 public function map(EntityContract $entity, array $data)
 {
     $entity->setParentId($id = $data['post_parent']);
     $entity->setParent(function () use($id) {
         $parent = null;
         if ($id) {
             $parent = $this->pageRepository->pageOfId($id);
         }
         return $parent;
     });
 }
Пример #2
0
 public function map(EntityContract $entity, array $data)
 {
     $entity->init((object) $data);
     $id = $data['ID'];
     $entity->setPosts(function () use($id) {
         return $this->postRepository->postsByAuthor($id);
     });
     $entity->setPages(function () use($id) {
         return $this->pageRepository->pagesByAuthor($id);
     });
     $entity->setComments(function () use($id) {
         return $this->commentRepository->commentsByAuthor($id);
     });
 }
Пример #3
0
 /**
  * Set the current entities for use in templates
  */
 protected function setCurrentEntities()
 {
     global $wp_query;
     if ($post = $wp_query->post) {
         if ($post->post_type === PagePostType::TYPE) {
             $this->pageRepository->setCurrentPage($this->pageRepository->pageOfId($post->ID));
         } elseif ($post->post_type === PostPostType::TYPE) {
             $this->postRepository->setCurrentPost($this->postRepository->postOfId($post->ID));
         }
     }
     $collection = new Collection();
     if ($posts = $wp_query->posts) {
         foreach ($posts as $post) {
             $collection->push($this->postRepository->postOfId($post->ID));
         }
     }
     $this->postRepository->setCurrentPosts($collection);
 }