_wp_remove_unregistered_widgets() WP 4.9.0
Compares a list of sidebars with their widgets against an allowed list.
Эта функция считается внутренней для использования самим ядром. Не рекомендуется использовать эту функцию в своем коде.
No Hooks.
Return
Array. Sidebars with allowed widgets.
Usage
_wp_remove_unregistered_widgets( $sidebars_widgets, $allowed_widget_ids );
- $sidebars_widgets(array) (required)
- List of sidebars and their widget instance IDs.
- $allowed_widget_ids(array)
- List of widget IDs to compare against.
Default: Registered widgets
Changelog
Since 4.9.0 | Introduced. |
Code of _wp_remove_unregistered_widgets() wp remove unregistered widgets WP 5.6.2
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;
}