get_archives() now checks for results from query before trying to iterate through them.

git-svn-id: http://svn.automattic.com/wordpress/trunk@293 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
mikelittle 2003-08-04 22:33:27 +00:00
parent 966a388a92
commit 96630b6e9d

View File

@ -162,20 +162,24 @@ function get_archives($type='', $limit='', $format='html') {
if ('monthly' == $type) {
++$querycount;
$arcresults = $wpdb->get_results("SELECT DISTINCT YEAR(post_date) AS `year`, MONTH(post_date) AS `month` FROM $tableposts WHERE post_date < '$now' AND post_category > 0 AND post_status = 'publish' ORDER BY post_date DESC" . $limit);
if ($arcresults) {
foreach ($arcresults as $arcresult) {
$url = sprintf("%s%d%02d", $archive_link_m, $arcresult->year, $arcresult->month);
$text = sprintf("%s %d", $month[zeroise($arcresult->month,2)], $arcresult->year);
echo get_archives_link($url, $text, $format);
}
}
} elseif ('daily' == $type) {
++$querycount;
$arcresults = $wpdb->get_results("SELECT DISTINCT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, DAYOFMONTH(post_date) AS `dayofmonth` FROM $tableposts WHERE post_date < '$now' AND post_category > 0 AND post_status = 'publish' ORDER BY post_date DESC" . $limit);
if ($arcresults) {
foreach ($arcresults as $arcresult) {
$url = sprintf("%s%d%02d%02d", $archive_link_m, $arcresult->year, $arcresult->month, $arcresult->dayofmonth);
$date = sprintf("%d-%02d-%02d 00:00:00", $arcresult->year, $arcresult->month, $arcresult->dayofmonth);
$text = mysql2date($archive_day_date_format, $date);
echo get_archives_link($url, $text, $format);
}
}
} elseif ('weekly' == $type) {
if (!isset($start_of_week)) {
$start_of_week = 1;
@ -183,6 +187,7 @@ function get_archives($type='', $limit='', $format='html') {
++$querycount;
$arcresults = $wpdb->get_results("SELECT DISTINCT WEEK(post_date, $start_of_week) AS `week`, YEAR(post_date) AS yr, DATE_FORMAT(post_date, '%Y-%m-%d') AS yyyymmdd FROM $tableposts WHERE post_date < '$now' AND post_category > 0 AND post_status = 'publish' ORDER BY post_date DESC" . $limit);
$arc_w_last = '';
if ($arcresults) {
foreach ($arcresults as $arcresult) {
if ($arcresult->week != $arc_w_last) {
$arc_year = $arcresult->yr;
@ -197,9 +202,11 @@ function get_archives($type='', $limit='', $format='html') {
echo get_archives_link($url, $text, $format);
}
}
}
} elseif ('postbypost' == $type) {
++$querycount;
$arcresults = $wpdb->get_results("SELECT ID, post_date, post_title FROM $tableposts WHERE post_date < '$now' AND post_category > 0 AND post_status = 'publish' ORDER BY post_date DESC" . $limit);
if ($arcresults) {
foreach ($arcresults as $arcresult) {
if ($arcresult->post_date != '0000-00-00 00:00:00') {
$url = $archive_link_p . $arcresult->ID;
@ -214,6 +221,7 @@ function get_archives($type='', $limit='', $format='html') {
}
}
}
}
/***** // About-the-blog tags *****/