_wp_remove_unregistered_widgets()WP 4.9.0

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

Внутренняя функция — эта функция рассчитана на использование самим ядром. Не рекомендуется использовать эту функцию в своем коде.

Хуков нет.

Возвращает

Массив. Sidebars with allowed widgets.

Использование

_wp_remove_unregistered_widgets( $sidebars_widgets, $allowed_widget_ids );
$sidebars_widgets(массив) (обязательный)
List of sidebars and their widget instance IDs.
$allowed_widget_ids(массив)
List of widget IDs to compare against.
По умолчанию: Registered widgets

Заметки

  • Global. Массив. $wp_registered_widgets The registered widgets.

Список изменений

С версии 4.9.0 Введена.

Код _wp_remove_unregistered_widgets() WP 6.5.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;
}