WordPress.org

Make WordPress Core

Ticket #6191: 6191.b.diff

File 6191.b.diff, 3.4 KB (added by mdawaffe, 7 years ago)

better fix

  • wp-includes/script-loader.php

     
    174174                                'saveText' => attribute_escape(__('Save »')), 
    175175                                'confirmText' => __("Are you sure you want to delete the file '%title%'?\nClick ok to delete or cancel to go back.") 
    176176                        ) ); 
    177                         $this->add( 'admin-widgets', '/wp-admin/js/widgets.js', array( 'interface' ), '20080305' ); 
     177                        $this->add( 'admin-widgets', '/wp-admin/js/widgets.js', array( 'interface' ), '20080313' ); 
    178178                        $this->localize( 'admin-widgets', 'widgetsL10n', array( 
    179179                                'add' => __('Add'), 
    180180                                'edit' => __('Edit'), 
  • wp-admin/includes/widgets.php

     
    4848 
    4949                        ob_start(); 
    5050                                $args = wp_list_widget_controls_dynamic_sidebar( array( 0 => array( 'widget_id' => $widget['id'], 'widget_name' => $widget['name'], '_display' => 'template' ) ) ); 
    51                                 call_user_func_array( 'wp_widget_control', $args ); 
     51                                $sidebar_args = call_user_func_array( 'wp_widget_control', $args ); 
    5252                        $widget_control_template = ob_get_contents(); 
    5353                        ob_end_clean(); 
    5454 
     
    7070                                        'edit' => $widget['id'], 
    7171                                        'key' => array_search( $widget['id'], $sidebars_widgets[$sidebar] ), 
    7272                                ) ) ); 
    73                                 $widget_control_template = '<li><textarea rows="1" cols="1">' . htmlspecialchars( $widget_control_template ) . '</textarea></li>'; 
     73                                 
     74                                $widget_control_template = '<textarea rows="1" cols="1">' . htmlspecialchars( $widget_control_template ) . '</textarea>'; 
    7475                        } 
    7576 
     77                        $widget_control_template = $sidebar_args['before_widget'] . $widget_control_template . $sidebar_args['after_widget']; 
     78 
    7679                        $no_widgets_shown = false; 
    7780 
    7881                ?> 
     
    201204                $widget_title = wp_specialchars( strip_tags( $sidebar_args['widget_name'] ) ); 
    202205 
    203206 
    204         echo $sidebar_args['before_widget']; 
     207        if ( empty($sidebar_args['_display']) || 'template' != $sidebar_args['_display'] ) 
     208                echo $sidebar_args['before_widget']; 
    205209?> 
    206210                <h4 class="widget-title"><?php echo $widget_title ?> 
    207211 
     
    242246                        </div> 
    243247                </div> 
    244248<?php 
    245         echo $sidebar_args['after_widget']; 
     249        if ( empty($sidebar_args['_display']) || 'template' != $sidebar_args['_display'] ) 
     250                echo $sidebar_args['after_widget']; 
     251        return $sidebar_args; 
    246252} 
    247253 
    248254function wp_widget_control_ob_filter( $string ) { 
  • wp-admin/js/widgets.js

     
    104104                $('a.widget-control-remove', context).click( function() { 
    105105                        var w = $(this).parents('li:first').find('input[@name^="widget-id"]').val(); 
    106106                        $(this).parents('li:first').remove(); 
    107                         var t = $('#widget-list ul#widget-control-info-' + w + ' textarea'); // will be empty for multi-widgets 
    108                         t.parents('.widget-control-info:first').html( t.text() ).parents('li.widget-list-item:first').children( 'h4' ).children('a.widget-action') 
     107                        var t = $('#widget-list ul#widget-control-info-' + w + ' textarea'); 
     108                        t.parent().html( t.text() ).parents('li.widget-list-item:first').children( 'h4' ).children('a.widget-action') 
    109109                                .show().text( widgetsL10n.add ).unbind().click( addClick ); 
    110110                        var n = parseInt( $('#widget-count').text(), 10 ) - 1; 
    111111                        $('#widget-count').text( n.toString() )