Exemplo n.º 1
0
 /**
  * 
  * get posts from categories (by the slider params).
  */
 private function getPostsFromCategories($publishedOnly = false)
 {
     $this->validateInited();
     $catIDs = $this->getParam("post_category");
     $data = RevSliderFunctionsWP::getCatAndTaxData($catIDs);
     $taxonomies = $data["tax"];
     $catIDs = $data["cats"];
     $sortBy = $this->getParam("post_sortby", self::DEFAULT_POST_SORTBY);
     $sortDir = $this->getParam("posts_sort_direction", self::DEFAULT_POST_SORTDIR);
     $maxPosts = $this->getParam("max_slider_posts", "30");
     if (empty($maxPosts) || !is_numeric($maxPosts)) {
         $maxPosts = -1;
     }
     $postTypes = $this->getParam("post_types", "any");
     //set direction for custom order
     if ($sortBy == RevSliderFunctionsWP::SORTBY_MENU_ORDER) {
         $sortDir = RevSliderFunctionsWP::ORDER_DIRECTION_ASC;
     }
     //Events integration
     $arrAddition = array();
     if ($publishedOnly == true) {
         $arrAddition["post_status"] = RevSliderFunctionsWP::STATE_PUBLISHED;
     }
     if (RevSliderEventsManager::isEventsExists()) {
         $filterType = $this->getParam("events_filter", RevSliderEventsManager::DEFAULT_FILTER);
         $arrAddition = RevSliderEventsManager::getWPQuery($filterType, $sortBy);
     }
     $slider_id = $this->getID();
     $arrPosts = RevSliderFunctionsWP::getPostsByCategory($slider_id, $catIDs, $sortBy, $sortDir, $maxPosts, $postTypes, $taxonomies, $arrAddition);
     return $arrPosts;
 }