Make WordPress Core

Ticket #19411: 19411.5.diff

File 19411.5.diff, 1.7 KB (added by aaroncampbell, 13 years ago)

Manual do_shortcode & shortcode_unautop

  • wp-includes/default-filters.php

     
    194194add_filter( 'pings_open',               '_close_comments_for_old_post', 10, 2 );
    195195add_filter( 'editable_slug',            'urldecode'                           );
    196196add_filter( 'nav_menu_meta_box_object', '_wp_nav_menu_meta_box_object'        );
    197 add_filter( 'widget_text',              'shortcode_unautop'                   );
    198 add_filter( 'widget_text',              'do_shortcode'                        );
    199197
    200198// Actions
    201199add_action( 'wp_head',             'wp_enqueue_scripts',              1     );
  • wp-includes/default-widgets.php

     
    378378                $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance, $this->id_base );
    379379                $text = apply_filters( 'widget_text', empty( $instance['text'] ) ? '' : $instance['text'], $instance );
    380380                echo $before_widget;
    381                 if ( !empty( $title ) ) { echo $before_title . $title . $after_title; } ?>
    382                         <div class="textwidget"><?php echo !empty( $instance['filter'] ) ? wpautop( $text ) : $text; ?></div>
     381                if ( !empty( $title ) ) { echo $before_title . $title . $after_title; }
     382                $text = !empty( $instance['filter'] ) ? wpautop( $text ) : $text;
     383                if ( false === has_filter( 'widget_text', 'do_shortcode' ) )
     384                        $text = do_shortcode( shortcode_unautop( $text ) );
     385                ?>
     386                        <div class="textwidget"><?php echo $text; ?></div>
    383387                <?php
    384388                echo $after_widget;
    385389        }