From e4399884343bd2babf1fabf621517c3df0cd5fdc Mon Sep 17 00:00:00 2001 From: ryan Date: Mon, 2 Oct 2006 18:01:07 +0000 Subject: [PATCH] wp_list_bookmarks() enhanccements from westi. #2587 git-svn-id: http://svn.automattic.com/wordpress/trunk@4263 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/bookmark-template.php | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/wp-includes/bookmark-template.php b/wp-includes/bookmark-template.php index a56facf4af..446ea4652d 100644 --- a/wp-includes/bookmark-template.php +++ b/wp-includes/bookmark-template.php @@ -316,34 +316,36 @@ function wp_list_bookmarks($args = '') { else parse_str($args, $r); - $defaults = array('orderby' => 'name', 'order' => 'ASC', 'limit' => -1, 'category' => 0, + $defaults = array('orderby' => 'name', 'order' => 'ASC', 'limit' => -1, 'category' => '', 'category_name' => '', 'hide_invisible' => 1, 'show_updated' => 0, 'echo' => 1, 'categorize' => 1, 'title_li' => __('Bookmarks'), 'title_before' => '

', 'title_after' => '

', 'category_orderby' => 'name', 'category_order' => 'ASC'); $r = array_merge($defaults, $r); extract($r); - // TODO: The rest of it. - // If $categorize, group links by category with the category name being the - // title of each li, otherwise just list them with title_li as the li title. - // If $categorize and $category or $category_name, list links for the given category - // with the category name as the title li. If not $categorize, use title_li. - // When using each category's name as a title li, use before and after args for specifying - // any markup. We don't want to hardcode h2. - $output = ''; if ( $categorize ) { - $cats = get_categories("type=link&orderby=$category_orderby&order=$category_order&hierarchical=0"); + //Split the bookmarks into ul's for each category + $cats = get_categories("type=link&category_name=$category_name&include=$category&orderby=$category_orderby&order=$category_order&hierarchical=0"); + foreach ( (array) $cats as $cat ) { - $r['category'] = $cat->cat_ID; - $bookmarks = get_bookmarks($r); + $bookmarks = get_bookmarks("limit=$limit&category={$cat->cat_ID}&show_updated=$show_updated&orderby=$orderby&order=$order&hide_invisible=$hide_inivisible&show_updated=$show_updated"); if ( empty($bookmarks) ) continue; $output .= "
  • $title_before$cat->cat_name$title_after\n\t\n
  • \n"; } + } else { + //output one single list using title_li for the title + $bookmarks = get_bookmarks("limit=$limit&category=$category&show_updated=$show_updated&orderby=$orderby&order=$order&hide_invisible=$hide_inivisible&show_updated=$show_updated"); + + if ( !empty($bookmarks) ) { + $output .= "
  • $title_before$title_li$title_after\n\t\n
  • \n"; + } } if ( !$echo ) @@ -351,4 +353,4 @@ function wp_list_bookmarks($args = '') { echo $output; } -?> \ No newline at end of file +?>