fetchAll($db->select()->from('table.contents') ->where('table.contents.status = ?', 'publish') ->where('table.contents.created < ?', $options->gmtTime) ->where('table.contents.type = ?', 'page') ->order('table.contents.created', Typecho_Db::SORT_DESC)); $articles = $db->fetchAll($db->select()->from('table.contents') ->where('table.contents.status = ?', 'publish') ->where('table.contents.created < ?', $options->gmtTime) ->where('table.contents.type = ?', 'post') ->order('table.contents.created', Typecho_Db::SORT_DESC)); header("Content-Type: application/xml"); echo "\n"; echo "pluginUrl . "/Sitemap/sitemap.xsl'?>\n"; echo ""; foreach($pages AS $page) { $type = $page['type']; $routeExists = (NULL != Typecho_Router::get($type)); $page['pathinfo'] = $routeExists ? Typecho_Router::url($type, $page) : '#'; $page['permalink'] = Typecho_Common::url($page['pathinfo'], $options->index); echo "\t\n"; echo "\t\t".$page['permalink']."\n"; echo "\t\t".date('Y-m-d',$page['modified'])."\n"; echo "\t\talways\n"; echo "\t\t0.8\n"; echo "\t\n"; } foreach($articles AS $article) { $type = $article['type']; $article['categories'] = $db->fetchAll($db->select()->from('table.metas') ->join('table.relationships', 'table.relationships.mid = table.metas.mid') ->where('table.relationships.cid = ?', $article['cid']) ->where('table.metas.type = ?', 'category') ->order('table.metas.order', Typecho_Db::SORT_ASC)); $article['category'] = urlencode(current(Typecho_Common::arrayFlatten($article['categories'], 'slug'))); $article['slug'] = urlencode($article['slug']); $article['date'] = new Typecho_Date($article['created']); $article['year'] = $article['date']->year; $article['month'] = $article['date']->month; $article['day'] = $article['date']->day; $routeExists = (NULL != Typecho_Router::get($type)); $article['pathinfo'] = $routeExists ? Typecho_Router::url($type, $article) : '#'; $article['permalink'] = Typecho_Common::url($article['pathinfo'], $options->index); echo "\t\n"; echo "\t\t".$article['permalink']."\n"; echo "\t\t".date('Y-m-d',$article['modified'])."\n"; echo "\t\talways\n"; echo "\t\t0.5\n"; echo "\t\n"; } echo ""; } }