函数文档

_wp_sidebars_changed()

💡 云策文档标注

概述

_wp_sidebars_changed() 是一个 WordPress 内部函数,用于在主题变更后处理侧边栏配置,确保小部件正确映射和保存。

关键要点

  • 函数在主题变更时自动调用,处理侧边栏和小部件的配置更新。
  • 通过 retrieve_widgets() 验证并重新映射“孤立”小部件到 wp_inactive_widgets 侧边栏。
  • 依赖全局变量 $sidebars_widgets 和函数 wp_get_sidebars_widgets() 来获取侧边栏和小部件实例 ID 列表。

代码示例

function _wp_sidebars_changed() {
	global $sidebars_widgets;

	if ( ! is_array( $sidebars_widgets ) ) {
		$sidebars_widgets = wp_get_sidebars_widgets();
	}

	retrieve_widgets( true );
}

注意事项

  • 此函数是内部函数,通常不应由开发者直接调用,WordPress 会在主题变更时自动处理。
  • retrieve_widgets() 必须至少在每次主题变更时运行,以确保小部件设置正确保存。

📄 原文内容

Handles sidebars config after theme change.

Source

function _wp_sidebars_changed() {
	global $sidebars_widgets;

	if ( ! is_array( $sidebars_widgets ) ) {
		$sidebars_widgets = wp_get_sidebars_widgets();
	}

	retrieve_widgets( true );
}

Changelog

Version Description
3.3.0 Introduced.