public static function getProperties($type = 'newest', $order = 'default', $count = 10) { $args = array('post_type' => 'properties', 'post_status' => 'publish', 'posts_per_page' => $count); if ($order == 'default') { $args['orderby'] = 'post_date'; $args['order'] = 'DESC'; } else { if ($order == 'random') { $args['orderby'] = 'rand'; } } // Prevent multiple instances of the same post if WPML is installed $args['suppress_filters'] = false; $meta_query = array(); if ($type == 'featured') { $meta_query[] = array('key' => USE_PREFIX . 'featured', 'value' => 'on'); } $args['meta_query'] = $meta_query; $key = md5(serialize($args)); $_properties = wp_cache_get($key, THEME_NAME); if (!$_properties) { $properties = get_posts($args); $_properties = array(); foreach ($properties as $property) { $p = new Property(); $p->setData($property); $_properties[] = $p; } wp_cache_set($key, $_properties, THEME_NAME); } self::$last_query_found_items_count = count($_properties); return $_properties; }
/** * set a property * * @param string $name * @param string $type * @param mixed $data * @param boolean $inherited */ public function setProperty($name, $type, $data, $inherited = false) { $this->getProperties(); $property = new Property(); $property->setType($type); $property->setCid($this->getId()); $property->setName($name); $property->setCtype("asset"); $property->setData($data); $property->setInherited($inherited); $this->properties[$name] = $property; }
<?php global $agent_mail_sent_success; $schemaorg_enabled = estetico_get_setting('schemaorg_enabled'); $property = new Property(); $property->setData($post); $meta = $property->getMeta(); $property->increaseViewCount(); ob_start(); the_content(__('Continue reading <span class="meta-nav">→</span>', THEME_NAME)); $content = ob_get_contents(); ob_end_clean(); $gallery_content = ""; $gallery_content_regex = '/<extract>(.*?)<\\/extract>/s'; preg_match($gallery_content_regex, $content, $matches); if (isset($matches[1])) { $gallery_content = $matches[1]; $content = preg_replace($gallery_content_regex, '', $content, 1); } $show_map = false; $lat = $property->getLatitude(); $lng = $property->getLongitude(); if (!empty($lat) && !empty($lng)) { $show_map = true; } $properties_page_url = estetico_get_properties_page_url(); ?> <article id="post-<?php the_ID(); ?>