wpseek.com
A WordPress-centric search engine for devs and theme authors



_wp_remove_unregistered_widgets › WordPress Function

Since4.9.0
Deprecatedn/a
_wp_remove_unregistered_widgets ( $sidebars_widgets, $allowed_widget_ids = array() )
Parameters: (2)
  • (array) $sidebars_widgets List of sidebars and their widget instance IDs.
    Required: Yes
  • (array) $allowed_widget_ids Optional. List of widget IDs to compare against. Default: Registered widgets.
    Required: No
    Default: array()
Returns:
  • (array) Sidebars with allowed widgets.
Defined at:
Codex:

Compares a list of sidebars with their widgets against an allowed list.



Source

function _wp_remove_unregistered_widgets( $sidebars_widgets, $allowed_widget_ids = array() ) {
	if ( empty( $allowed_widget_ids ) ) {
		$allowed_widget_ids = array_keys( $GLOBALS['wp_registered_widgets'] );
	}

	foreach ( $sidebars_widgets as $sidebar => $widgets ) {
		if ( is_array( $widgets ) ) {
			$sidebars_widgets[ $sidebar ] = array_intersect( $widgets, $allowed_widget_ids );
		}
	}

	return $sidebars_widgets;
}