From 967b1a18baf6f5bf4811afca13c3c189db4e1b25 Mon Sep 17 00:00:00 2001 From: Ryan Boren Date: Tue, 11 Jul 2006 18:15:24 +0000 Subject: [PATCH] Allow limiting the number of cats to fetch. git-svn-id: https://develop.svn.wordpress.org/trunk@4015 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-includes/category.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/wp-includes/category.php b/wp-includes/category.php index 2a00ed3a0e..30392a7594 100644 --- a/wp-includes/category.php +++ b/wp-includes/category.php @@ -20,12 +20,14 @@ function &get_categories($args = '') { parse_str($args, $r); $defaults = array('type' => 'post', 'child_of' => 0, 'orderby' => 'name', 'order' => 'ASC', - 'hide_empty' => true, 'include_last_update_time' => false, 'hierarchical' => 1, $exclude => '', $include => ''); + 'hide_empty' => true, 'include_last_update_time' => false, 'hierarchical' => 1, $exclude => '', $include => '', + 'number' => ''); $r = array_merge($defaults, $r); if ( 'count' == $r['orderby'] ) $r['orderby'] = 'category_count'; else $r['orderby'] = "cat_" . $r['orderby']; // restricts order by to cat_ID and cat_name fields + $r['number'] = (int) $r['number']; extract($r); $where = 'cat_ID > 0'; @@ -73,7 +75,12 @@ function &get_categories($args = '') { $having = 'HAVING category_count > 0'; } - $categories = $wpdb->get_results("SELECT * FROM $wpdb->categories WHERE $where $having ORDER BY $orderby $order"); + if ( !empty($number) ) + $number = 'LIMIT ' . $number; + else + $number = ''; + + $categories = $wpdb->get_results("SELECT * FROM $wpdb->categories WHERE $where $having ORDER BY $orderby $order $number"); if ( empty($categories) ) return array();