getting the list of categories from cat_counts if hide_empty is true, saves one query
git-svn-id: https://develop.svn.wordpress.org/trunk@2356 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
8150ffc1a3
commit
523757d3e6
|
@ -269,20 +269,27 @@ function list_cats($optionall = 1, $all = 'All', $sort_column = 'ID', $sort_orde
|
|||
}
|
||||
}
|
||||
|
||||
if (intval($categories)==0){
|
||||
$sort_column = 'cat_'.$sort_column;
|
||||
if ($hide_empty) {
|
||||
$categories = array();
|
||||
$extra_fields = 'cat_name, category_nicename, category_description,';
|
||||
} else {
|
||||
if (intval($categories)==0 && !$hide_empty){
|
||||
$sort_column = 'cat_'.$sort_column;
|
||||
|
||||
$query = "
|
||||
SELECT cat_ID, cat_name, category_nicename, category_description, category_parent
|
||||
FROM $wpdb->categories
|
||||
WHERE cat_ID > 0 $exclusions
|
||||
ORDER BY $sort_column $sort_order";
|
||||
$query = "
|
||||
SELECT cat_ID, cat_name, category_nicename, category_description, category_parent
|
||||
FROM $wpdb->categories
|
||||
WHERE cat_ID > 0 $exclusions
|
||||
ORDER BY $sort_column $sort_order";
|
||||
|
||||
$categories = $wpdb->get_results($query);
|
||||
$categories = $wpdb->get_results($query);
|
||||
}
|
||||
$extra_fields = '';
|
||||
}
|
||||
|
||||
if (!count($category_posts)) {
|
||||
$now = current_time('mysql', 1);
|
||||
$cat_counts = $wpdb->get_results(" SELECT cat_ID,
|
||||
$cat_counts = $wpdb->get_results(" SELECT cat_ID, $extra_fields
|
||||
COUNT($wpdb->post2cat.post_id) AS cat_count
|
||||
FROM $wpdb->categories
|
||||
INNER JOIN $wpdb->post2cat ON (cat_ID = category_id)
|
||||
|
@ -294,6 +301,9 @@ function list_cats($optionall = 1, $all = 'All', $sort_column = 'ID', $sort_orde
|
|||
foreach ($cat_counts as $cat_count) {
|
||||
if (1 != intval($hide_empty) || $cat_count > 0) {
|
||||
$category_posts["$cat_count->cat_ID"] = $cat_count->cat_count;
|
||||
if ($hide_empty) {
|
||||
$categories[] = $cat_count;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue