wp_assign_widget_to_sidebar()WP 5.8.0

Assigns a widget to the given sidebar.

Хуков нет.

Возвращает

null. Ничего.

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

wp_assign_widget_to_sidebar( $widget_id, $sidebar_id );
$widget_id(строка) (обязательный)
The widget ID to assign.
$sidebar_id(строка) (обязательный)
The sidebar ID to assign to. If empty, the widget won't be added to any sidebar.

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

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

Код wp_assign_widget_to_sidebar() WP 6.0

function wp_assign_widget_to_sidebar( $widget_id, $sidebar_id ) {
	$sidebars = wp_get_sidebars_widgets();

	foreach ( $sidebars as $maybe_sidebar_id => $widgets ) {
		foreach ( $widgets as $i => $maybe_widget_id ) {
			if ( $widget_id === $maybe_widget_id && $sidebar_id !== $maybe_sidebar_id ) {
				unset( $sidebars[ $maybe_sidebar_id ][ $i ] );
				// We could technically break 2 here, but continue looping in case the ID is duplicated.
				continue 2;
			}
		}
	}

	if ( $sidebar_id ) {
		$sidebars[ $sidebar_id ][] = $widget_id;
	}

	wp_set_sidebars_widgets( $sidebars );
}