_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() 必须至少在每次主题变更时运行,以确保小部件设置正确保存。
原文内容