wp_list_widgets

Definition:
function wp_list_widgets() {}

Display list of the available widgets.

Source code

function wp_list_widgets() {

	global $wp_registered_widgets, $sidebars_widgets, $wp_registered_widget_controls;



	$sort = $wp_registered_widgets;

	usort( $sort, '_sort_name_callback' );

	$done = array();



	foreach ( $sort as $widget ) {

		if ( in_array( $widget['callback'], $done, true ) ) // We already showed this multi-widget

			continue;



		$sidebar = is_active_widget( $widget['callback'], $widget['id'], false, false );

		$done[] = $widget['callback'];



		if ( ! isset( $widget['params'][0] ) )

			$widget['params'][0] = array();



		$args = array( 'widget_id' => $widget['id'], 'widget_name' => $widget['name'], '_display' => 'template' );



		if ( isset($wp_registered_widget_controls[$widget['id']]['id_base']) && isset($widget['params'][0]['number']) ) {

			$id_base = $wp_registered_widget_controls[$widget['id']]['id_base'];

			$args['_temp_id'] = "$id_base-__i__";

			$args['_multi_num'] = next_widget_id_number($id_base);

			$args['_add'] = 'multi';

		} else {

			$args['_add'] = 'single';

			if ( $sidebar )

				$args['_hide'] = '1';

		}



		$args = wp_list_widget_controls_dynamic_sidebar( array( 0 => $args, 1 => $widget['params'][0] ) );

		call_user_func_array( 'wp_widget_control', $args );

	}

}

3865

No comments yet... Be the first to leave a reply!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: