Make WordPress Core


Ignore:
Timestamp:
05/23/2007 03:57:20 AM (19 years ago)
Author:
ryan
Message:

Add get_terms() and get_term(). Move more of tagging to taxonomy. see #4189

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/category.php

    r5444 r5521  
    354354    global $wpdb, $category_links;
    355355
    356     $defaults = array('orderby' => 'name', 'order' => 'ASC',
    357         'hide_empty' => true, 'exclude' => '', 'include' => '',
    358         'number' => '');
    359     $args = wp_parse_args( $args, $defaults );
    360     if ( 'count' == $args['orderby'] )
    361         $args['orderby'] = 'tag_count';
    362     else
    363         $args['orderby'] = "cat_" . $args['orderby'];  // restricts order by to cat_ID and cat_name fields
    364     $args['number'] = (int) $args['number'];
    365     extract($args);
    366 
    367356    $key = md5( serialize( $args ) );
    368357    if ( $cache = wp_cache_get( 'get_tags', 'category' ) )
     
    370359            return apply_filters('get_tags', $cache[$key], $args);
    371360
    372     $where = 'cat_ID > 0';
    373     $inclusions = '';
    374     if ( !empty($include) ) {
    375         $child_of = 0; //ignore child_of and exclude params if using include
    376         $exclude = '';
    377         $incategories = preg_split('/[\s,]+/',$include);
    378         if ( count($incategories) ) {
    379             foreach ( $incategories as $incat ) {
    380                 if (empty($inclusions))
    381                     $inclusions = ' AND ( cat_ID = ' . intval($incat) . ' ';
    382                 else
    383                     $inclusions .= ' OR cat_ID = ' . intval($incat) . ' ';
    384             }
    385         }
    386     }
    387 
    388     if (!empty($inclusions))
    389         $inclusions .= ')';
    390     $where .= $inclusions;
    391 
    392     $exclusions = '';
    393     if ( !empty($exclude) ) {
    394         $excategories = preg_split('/[\s,]+/',$exclude);
    395         if ( count($excategories) ) {
    396             foreach ( $excategories as $excat ) {
    397                 if (empty($exclusions))
    398                     $exclusions = ' AND ( cat_ID <> ' . intval($excat) . ' ';
    399                 else
    400                     $exclusions .= ' AND cat_ID <> ' . intval($excat) . ' ';
    401             }
    402         }
    403     }
    404 
    405     if (!empty($exclusions))
    406         $exclusions .= ')';
    407     $exclusions = apply_filters('list_tags_exclusions', $exclusions, $args );
    408     $where .= $exclusions;
    409 
    410     if ( $hide_empty )
    411         $where .= ' AND tag_count > 0';
    412 
    413     $where .= ' AND ( type & ' . TAXONOMY_TAG . ' != 0 ) ';
    414 
    415     if ( !empty($number) )
    416         $number = 'LIMIT ' . $number;
    417     else
    418         $number = '';
    419 
    420     $tags = $wpdb->get_results("SELECT * FROM $wpdb->categories WHERE $where ORDER BY $orderby $order $number");
     361
     362    $tags = get_terms('post_tag');
    421363
    422364    if ( empty($tags) )
Note: See TracChangeset for help on using the changeset viewer.