X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/4f4e083f6f77639c41e2b1ddb200de8e34301cee..88550bc3400cc7c035ff590ecb007c7938041ded:/wp-admin/includes/widgets.php?ds=sidebyside diff --git a/wp-admin/includes/widgets.php b/wp-admin/includes/widgets.php index d6d930da..c8694494 100644 --- a/wp-admin/includes/widgets.php +++ b/wp-admin/includes/widgets.php @@ -7,20 +7,15 @@ */ /** - * Display list of the available widgets, either all or matching search. + * Display list of the available widgets. * - * The search parameter are search terms separated by spaces. - * - * @since unknown - * - * @param string $show Optional, default is all. What to display, can be 'all', 'unused', or 'used'. - * @param string $_search Optional. Search for widgets. Should be unsanitized. + * @since 2.5.0 */ function wp_list_widgets() { - global $wp_registered_widgets, $sidebars_widgets, $wp_registered_widget_controls; + global $wp_registered_widgets, $wp_registered_widget_controls; $sort = $wp_registered_widgets; - usort( $sort, create_function( '$a, $b', 'return strnatcasecmp( $a["name"], $b["name"] );' ) ); + usort( $sort, '_sort_name_callback' ); $done = array(); foreach ( $sort as $widget ) { @@ -52,24 +47,57 @@ function wp_list_widgets() { } /** - * {@internal Missing Short Description}} + * Callback to sort array by a 'name' key. + * + * @since 3.1.0 + * @access private + */ +function _sort_name_callback( $a, $b ) { + return strnatcasecmp( $a['name'], $b['name'] ); +} + +/** + * Show the widgets and their settings for a sidebar. + * Used in the admin widget config screen. * - * @since unknown + * @since 2.5.0 * - * @param string $sidebar + * @param string $sidebar id slug of the sidebar + * @param string optional $sidebar_name Include the HTML for the sidebar name */ -function wp_list_widget_controls( $sidebar ) { +function wp_list_widget_controls( $sidebar, $sidebar_name = '' ) { add_filter( 'dynamic_sidebar_params', 'wp_list_widget_controls_dynamic_sidebar' ); - echo "\t
\n"; + $description = wp_sidebar_description( $sidebar ); + + echo '
'; + + if ( $sidebar_name ) { + ?> + + '; + + if ( ! empty( $description ) ) { + echo '

' . $description . '

'; + } + + echo '
'; + dynamic_sidebar( $sidebar ); - echo "\t
\n"; + + echo ''; } /** * {@internal Missing Short Description}} * - * @since unknown + * @since 2.5.0 * * @param array $params * @return array @@ -83,7 +111,7 @@ function wp_list_widget_controls_dynamic_sidebar( $params ) { $id = isset($params[0]['_temp_id']) ? $params[0]['_temp_id'] : $widget_id; $hidden = isset($params[0]['_hide']) ? ' style="display:none;"' : ''; - $params[0]['before_widget'] = "
"; + $params[0]['before_widget'] = "
"; $params[0]['after_widget'] = "
"; $params[0]['before_title'] = "%BEG_OF_TITLE%"; // deprecated $params[0]['after_title'] = "%END_OF_TITLE%"; // deprecated @@ -113,7 +141,7 @@ function next_widget_id_number($id_base) { * * Called from dynamic_sidebar(). * - * @since unknown + * @since 2.5.0 * * @param array $sidebar_args * @return array @@ -145,11 +173,14 @@ function wp_widget_control( $sidebar_args ) { $query_arg['key'] = $key; } - // We aren't showing a widget control, we're outputing a template for a mult-widget control + /* + * We aren't showing a widget control, we're outputting a template + * for a multi-widget control. + */ if ( isset($sidebar_args['_display']) && 'template' == $sidebar_args['_display'] && $widget_number ) { // number == -1 implies a template where id numbers are replaced by a generic '__i__' $control['params'][0]['number'] = -1; - // with id_base widget id's are constructed like {$id_base}-{$id_number} + // With id_base widget id's are constructed like {$id_base}-{$id_number}. if ( isset($control['id_base']) ) $id_format = $control['id_base'] . '-__i__'; } @@ -164,7 +195,11 @@ function wp_widget_control( $sidebar_args ) {

@@ -180,20 +215,20 @@ function wp_widget_control( $sidebar_args ) {
- - + +
- | + |
- - + 'widget-' . esc_attr( $id_format ) . '-savewidget' ) ); ?> +

@@ -205,6 +240,6 @@ function wp_widget_control( $sidebar_args ) {