WordPress.org

Make WordPress Core

Ticket #4693: 4693-echo.diff

File 4693-echo.diff, 3.7 KB (added by Otto42, 13 years ago)

Patch to allow wp_tag_cloud to not have to echo the results.

  • wp-includes/category-template.php

     
    8282        return strcmp($a->name, $b->name);
    8383}
    8484
    85 function _usort_terms_by_ID($a, $b) { 
    86         if ( $a->term_id > $b->term_id ) 
    87                 return 1; 
    88         elseif ( $a->term_id < $b->term_id ) 
    89                 return -1; 
    90         else 
    91                 return 0; 
     85function _usort_terms_by_ID($a, $b) {
     86        if ( $a->term_id > $b->term_id )
     87                return 1;
     88        elseif ( $a->term_id < $b->term_id )
     89                return -1;
     90        else
     91                return 0;
    9292}
    9393
    9494function get_the_category_by_ID($cat_ID) {
     
    178178
    179179function wp_dropdown_categories($args = '') {
    180180        $defaults = array(
    181                 'show_option_all' => '', 'show_option_none' => '', 
    182                 'orderby' => 'ID', 'order' => 'ASC', 
    183                 'show_last_update' => 0, 'show_count' => 0, 
    184                 'hide_empty' => 1, 'child_of' => 0, 
    185                 'exclude' => '', 'echo' => 1, 
    186                 'selected' => 0, 'hierarchical' => 0, 
     181                'show_option_all' => '', 'show_option_none' => '',
     182                'orderby' => 'ID', 'order' => 'ASC',
     183                'show_last_update' => 0, 'show_count' => 0,
     184                'hide_empty' => 1, 'child_of' => 0,
     185                'exclude' => '', 'echo' => 1,
     186                'selected' => 0, 'hierarchical' => 0,
    187187                'name' => 'cat', 'class' => 'postform'
    188188        );
    189189
     
    228228
    229229function wp_list_categories($args = '') {
    230230        $defaults = array(
    231                 'show_option_all' => '', 'orderby' => 'name', 
    232                 'order' => 'ASC', 'show_last_update' => 0, 
    233                 'style' => 'list', 'show_count' => 0, 
    234                 'hide_empty' => 1, 'use_desc_for_title' => 1, 
    235                 'child_of' => 0, 'feed' => '', 
    236                 'feed_image' => '', 'exclude' => '', 
     231                'show_option_all' => '', 'orderby' => 'name',
     232                'order' => 'ASC', 'show_last_update' => 0,
     233                'style' => 'list', 'show_count' => 0,
     234                'hide_empty' => 1, 'use_desc_for_title' => 1,
     235                'child_of' => 0, 'feed' => '',
     236                'feed_image' => '', 'exclude' => '',
    237237                'hierarchical' => true, 'title_li' => __('Categories')
    238238        );
    239239
     
    264264                global $wp_query;
    265265
    266266                if( !empty($show_option_all) )
    267                         if ('list' == $style ) 
     267                        if ('list' == $style )
    268268                                $output .= '<li><a href="' .  get_bloginfo('url')  . '">' . $show_option_all . '</a></li>';
    269269                        else
    270270                                $output .= '<a href="' .  get_bloginfo('url')  . '">' . $show_option_all . '</a>';
     
    288288
    289289function wp_tag_cloud( $args = '' ) {
    290290        $defaults = array(
    291                 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45, 
     291                'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
    292292                'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC',
    293                 'exclude' => '', 'include' => ''
     293                'exclude' => '', 'include' => '', 'echo' = true,
    294294        );
    295295        $args = wp_parse_args( $args, $defaults );
    296296
     
    300300                return;
    301301
    302302        $return = wp_generate_tag_cloud( $tags, $args ); // Here's where those top tags get sorted according to $args
    303         echo apply_filters( 'wp_tag_cloud', $return, $args );
     303        $output = apply_filters( 'wp_tag_cloud', $return, $args );
     304
     305        if ( $args['echo'] ) echo $output;
     306        else return $output;
    304307}
    305308
    306309// $tags = prefetched tag array ( get_tags() )
     
    408411}
    409412
    410413function get_the_tags( $id = 0 ) {
    411         global $post; 
     414        global $post;
    412415
    413416        $id = (int) $id;
    414417
    415         if ( ! $id && ! in_the_loop() ) 
    416                 return false; // in-the-loop function 
     418        if ( ! $id && ! in_the_loop() )
     419                return false; // in-the-loop function
    417420
    418         if ( !$id ) 
     421        if ( !$id )
    419422                $id = (int) $post->ID;
    420423
    421424        $tags = get_object_term_cache($id, 'post_tag');
     
    423426                $tags = wp_get_object_terms($id, 'post_tag');
    424427
    425428        $tags = apply_filters( 'get_the_tags', $tags );
    426         if ( empty( $tags ) ) 
    427                 return false; 
    428         return $tags; 
     429        if ( empty( $tags ) )
     430                return false;
     431        return $tags;
    429432}
    430433
    431434function the_tags( $before = 'Tags: ', $sep = ', ', $after = '' ) {