/** * Obtem eventos futuros do pai e dos filhos dele (todas as ocorrencias do evento pai) * @param $id_evento_pai * @return Evento[] */ public function getFuturosByPai($id_evento_pai) { $sqlToday = date('Y-m-d'); $sql = "\n SELECT wp_posts.ID\n FROM wp_posts\n LEFT JOIN wp_term_relationships ON wp_posts.ID=wp_term_relationships.object_id\n LEFT JOIN wp_postmeta ON wp_postmeta.post_id=wp_posts.id\n WHERE wp_posts.post_type = 'tgo_evento'\n AND wp_posts.post_status = 'publish'\n AND\n (wp_posts.ID in\n ( SELECT post_id\n FROM wp_postmeta\n WHERE meta_key='id_evento_pai' and meta_value={$id_evento_pai}\n )\n OR\n wp_posts.ID={$id_evento_pai}\n )\n AND meta_key='data'\n AND CAST(wp_postmeta.meta_value as DATE)>='{$sqlToday}'"; // echo $sql; $results = wpdb()->get_results($sql); if ($results) { $return = array(); foreach ($results as $result) { $return[] = $this->getById($result->ID); } return $return; } }
public function hasFilhos($futuro = true) { if ($this->_hasFilhos != null) { return $this->_hasFilhos; } $sqlToday = date('Y-m-d'); $sql = "\n SELECT wp_posts.ID\n FROM wp_posts\n LEFT JOIN wp_term_relationships ON wp_posts.ID=wp_term_relationships.object_id\n LEFT JOIN wp_postmeta ON wp_postmeta.post_id=wp_posts.id\n WHERE wp_posts.post_type = 'tgo_evento'\n AND wp_posts.post_status = 'publish'\n AND\n (wp_posts.ID in\n ( SELECT post_id\n FROM wp_postmeta\n WHERE meta_key='id_evento_pai' and meta_value={$this->id}\n )\n )\n AND meta_key='data'\n AND CAST(wp_postmeta.meta_value as DATE)>='{$sqlToday}'"; $results = wpdb()->get_results($sql); $this->_hasFilhos = count($results) > 0; return $this->_hasFilhos; }