last_cats fix from TheJason.
git-svn-id: http://svn.automattic.com/wordpress/trunk@797 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
e9c7715b9a
commit
996ba79f93
|
@ -1484,73 +1484,80 @@ function dropdown_cats($optionall = 1, $all = 'All', $sort_column = 'ID', $sort_
|
||||||
echo "</select>\n";
|
echo "</select>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
// out of the WordPress loop
|
// Out of the WordPress loop
|
||||||
function list_cats($optionall = 1, $all = 'All', $sort_column = 'ID', $sort_order = 'asc', $file = '', $list = true, $optiondates = 0, $optioncount = 0, $hide_empty = 1, $use_desc_for_title = 0) {
|
function list_cats($optionall = 1, $all = 'All', $sort_column = 'ID', $sort_order = 'asc', $file = '', $list = true, $optiondates = 0, $optioncount = 0, $hide_empty = 1, $use_desc_for_title = 0) {
|
||||||
global $tablecategories, $tableposts, $tablepost2cat, $wpdb;
|
global $tablecategories, $tableposts, $tablepost2cat, $wpdb;
|
||||||
global $pagenow, $siteurl, $blogfilename;
|
global $pagenow, $siteurl, $blogfilename;
|
||||||
global $querystring_start, $querystring_equal, $querystring_separator;
|
global $querystring_start, $querystring_equal, $querystring_separator;
|
||||||
// Optiondates does not currently work
|
// Optiondates now works
|
||||||
if ('' == $file) {
|
if ('' == $file) {
|
||||||
$file = "$siteurl/$blogfilename";
|
$file = "$siteurl/$blogfilename";
|
||||||
}
|
}
|
||||||
$sort_column = 'cat_'.$sort_column;
|
$sort_column = 'cat_'.$sort_column;
|
||||||
|
|
||||||
$query = "
|
$query = "
|
||||||
SELECT cat_ID, cat_name, category_nicename, category_description
|
SELECT cat_ID, cat_name, category_nicename, category_description
|
||||||
FROM $tablecategories
|
FROM $tablecategories
|
||||||
WHERE cat_ID > 0
|
WHERE cat_ID > 0
|
||||||
ORDER BY $sort_column $sort_order";
|
ORDER BY $sort_column $sort_order";
|
||||||
|
|
||||||
$categories = $wpdb->get_results($query);
|
$categories = $wpdb->get_results($query);
|
||||||
|
|
||||||
if (intval($hide_empty) == 1) {
|
if (intval($hide_empty) == 1 || intval($optioncount) == 1) {
|
||||||
$cat_counts = $wpdb->get_results(" SELECT cat_ID,
|
$cat_counts = $wpdb->get_results(" SELECT cat_ID,
|
||||||
COUNT($tablepost2cat.post_id) AS cat_count
|
COUNT($tablepost2cat.post_id) AS cat_count
|
||||||
FROM $tablecategories LEFT JOIN $tablepost2cat ON (cat_ID = category_id)
|
FROM $tablecategories LEFT JOIN $tablepost2cat ON (cat_ID = category_id)
|
||||||
LEFT JOIN $tableposts ON (ID = post_id)
|
LEFT JOIN $tableposts ON (ID = post_id)
|
||||||
GROUP BY category_id");
|
GROUP BY category_id");
|
||||||
foreach ($cat_counts as $cat_count) {
|
foreach ($cat_counts as $cat_count) {
|
||||||
$category_posts["$cat_count->cat_ID"] = $cat_count->cat_count;
|
$category_posts["$cat_count->cat_ID"] = $cat_count->cat_count;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (intval($optiondates) == 1) {
|
||||||
|
$cat_dates = $wpdb->get_results(" SELECT cat_ID,
|
||||||
|
DAYOFMONTH(MAX(post_date)) AS lastday, MONTH(MAX(post_date)) AS lastmonth
|
||||||
|
FROM $tablecategories LEFT JOIN $tablepost2cat ON (cat_ID = category_id)
|
||||||
|
LEFT JOIN $tableposts ON (ID = post_id)
|
||||||
|
GROUP BY category_id");
|
||||||
|
foreach ($cat_dates as $cat_date) {
|
||||||
|
$category_lastday["$cat_date->cat_ID"] = $cat_date->lastday;
|
||||||
|
$category_lastmonth["$cat_date->cat_ID"] = $cat_date->lastmonth;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (intval($optioncount) == 1) {
|
if (!$categories) {
|
||||||
$link .= ' ('.$category->cat_count.')';
|
if ($list) {
|
||||||
}
|
$before = '<li>';
|
||||||
|
$after = '</li>';
|
||||||
if (!$categories) {
|
|
||||||
if ($list) {
|
|
||||||
$before = '<li>';
|
|
||||||
$after = '</li>';
|
|
||||||
}
|
|
||||||
echo $before . "No categories" . $after . "\n";
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach ($categories as $category) {
|
|
||||||
$link = '<a href="'.get_category_link(0, $category->cat_ID, $category->category_nicename).'" ';
|
|
||||||
if ($use_desc_for_title == 0 || empty($category->category_description)) {
|
|
||||||
$link .= 'title="View all posts filed under ' . htmlspecialchars($category->cat_name) . '"';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$link .= 'title="' . htmlspecialchars($category->category_description) . '"';
|
|
||||||
}
|
|
||||||
$link .= '>';
|
|
||||||
$link .= stripslashes($category->cat_name).'</a>';
|
|
||||||
if (intval($optioncount) == 1) {
|
|
||||||
$link .= ' ('.$category_posts["$category->cat_ID"].')';
|
|
||||||
}
|
}
|
||||||
if (intval($optiondates) == 1) {
|
echo $before . "No categories" . $after . "\n";
|
||||||
$link .= ' '.$category->lastday.'/'.$category->lastmonth;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($categories as $category) {
|
||||||
|
if (intval($hide_empty) == 0 || $category_posts["$category->cat_ID"] > 0) {
|
||||||
|
$link = '<a href="'.get_category_link(0, $category->cat_ID, $category->category_nicename).'" ';
|
||||||
|
if ($use_desc_for_title == 0 || empty($category->category_description)) {
|
||||||
|
$link .= 'title="View all posts filed under ' . htmlspecialchars($category->cat_name) . '"';
|
||||||
|
} else {
|
||||||
|
$link .= 'title="' . htmlspecialchars($category->category_description) . '"';
|
||||||
|
}
|
||||||
|
$link .= '>';
|
||||||
|
$link .= stripslashes($category->cat_name).'</a>';
|
||||||
|
if (intval($optioncount) == 1) {
|
||||||
|
$link .= ' ('.intval($category_posts["$category->cat_ID"]).')';
|
||||||
|
}
|
||||||
|
if (intval($optiondates) == 1) {
|
||||||
|
$link .= ' '.$category_lastday["$category->cat_ID"].'/'.$category_lastmonth["$category->cat_ID"];
|
||||||
|
}
|
||||||
|
if ($list) {
|
||||||
|
echo "\t<li>$link</li>\n";
|
||||||
|
} else {
|
||||||
|
echo "\t$link<br />\n";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!$hide_empty || $category_posts[$category->cat_ID]) {
|
}
|
||||||
if ($list) {
|
|
||||||
echo "\t<li>$link</li>\n";
|
|
||||||
} else {
|
|
||||||
echo "\t$link<br />\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** // Category tags *****/
|
/***** // Category tags *****/
|
||||||
|
@ -1649,9 +1656,8 @@ function comment_author() {
|
||||||
$author = apply_filters('comment_auther', $author);
|
$author = apply_filters('comment_auther', $author);
|
||||||
$author = convert_chars($author);
|
$author = convert_chars($author);
|
||||||
if (!empty($author)) {
|
if (!empty($author)) {
|
||||||
echo $comment->comment_author;
|
echo $author;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
echo "Anonymous";
|
echo "Anonymous";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue