Ticket #19092: 19092.patch
File 19092.patch, 1.4 KB (added by , 12 years ago) |
---|
-
wp-includes/widgets.php
1164 1164 function retrieve_widgets() { 1165 1165 global $wp_registered_widget_updates, $wp_registered_sidebars, $sidebars_widgets, $wp_registered_widgets; 1166 1166 1167 $registered_sidebar_keys = array_keys($wp_registered_sidebars); 1168 1167 1169 $old_sidebars_widgets = get_theme_mod( 'sidebars_widgets' ); 1168 1170 if ( is_array( $old_sidebars_widgets ) ) { 1169 1171 // time() that sidebars were stored is in $old_sidebars_widgets['time'] 1170 1172 $_sidebars_widgets = $old_sidebars_widgets['data']; 1171 1173 remove_theme_mod( 'sidebars_widgets' ); 1174 1175 $orphaned = 0; 1176 1177 foreach ( $_sidebars_widgets as $sidebar => $widgets ) { 1178 if ( 'wp_inactive_widgets' == $sidebar || 'orphaned_widgets' == substr( $sidebar, 0, 16 ) ) 1179 continue; 1180 1181 if ( !in_array( $sidebar, $registered_sidebar_keys ) ) { 1182 $_sidebars_widgets['orphaned_widgets_' . ++$orphaned] = $widgets; 1183 unset( $_sidebars_widgets[$sidebar] ); 1184 } 1185 } 1172 1186 } else { 1173 1187 if ( empty( $sidebars_widgets ) ) 1174 1188 return; 1175 1189 1176 $sidebars = array_keys($wp_registered_sidebars);1177 1178 1190 unset( $sidebars_widgets['array_version'] ); 1179 1191 1180 1192 $old = array_keys($sidebars_widgets); 1181 1193 sort($old); 1182 sort($ sidebars);1194 sort($registered_sidebar_keys); 1183 1195 1184 if ( $old == $ sidebars )1196 if ( $old == $registered_sidebar_keys ) 1185 1197 return; 1186 1198 1187 1199 $_sidebars_widgets = array(