_wp_remove_unregistered_widgets( array $sidebars_widgets, array $allowed_widget_ids = array() )
Compares a list of sidebars with their widgets against an allowed list.
Parameters
- $sidebars_widgets
-
(array) (Required) List of sidebars and their widget instance IDs.
- $allowed_widget_ids
-
(array) (Optional) List of widget IDs to compare against. Default: Registered widgets.
Default value: array()
Return
(array) Sidebars with allowed widgets.
Source
File: wp-includes/widgets.php
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; }
Changelog
Version | Description |
---|---|
4.9.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/_wp_remove_unregistered_widgets