「 Wordpress 」 一覧
-
WordPressを読む 68-4 /blog/wp-includes/widgets.php 4
2014/12/04 Wordpress
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112/*** Look for "lost" widgets, this has to run at least on each theme change.** @since 2.8.0** @param mixed $theme_changed Whether the theme was changed as a boolean. A value* of 'customize' defers updates for the customizer.* @return array*/function retrieve_widgets( $theme_changed = false ) {global $wp_registered_sidebars, $sidebars_widgets, $wp_registered_widgets;$registered_sidebar_keys = array_keys( $wp_registered_sidebars );$orphaned = 0;$old_sidebars_widgets = get_theme_mod( 'sidebars_widgets' );if ( is_array( $old_sidebars_widgets ) ) {// time() that sidebars were stored is in $old_sidebars_widgets['time']$_sidebars_widgets = $old_sidebars_widgets['data'];if ( 'customize' !== $theme_changed ) {remove_theme_mod( 'sidebars_widgets' );}foreach ( $_sidebars_widgets as $sidebar => $widgets ) {if ( 'wp_inactive_widgets' === $sidebar || 'orphaned_widgets' === substr( $sidebar, 0, 16 ) ) {continue;}if ( !in_array( $sidebar, $registered_sidebar_keys ) ) {$_sidebars_widgets['orphaned_widgets_' . ++$orphaned] = $widgets;unset( $_sidebars_widgets[$sidebar] );}}} else {if ( empty( $sidebars_widgets ) )return;unset( $sidebars_widgets['array_version'] );$old = array_keys($sidebars_widgets);sort($old);sort($registered_sidebar_keys);if ( $old == $registered_sidebar_keys )return;$_sidebars_widgets = array('wp_inactive_widgets' => !empty( $sidebars_widgets['wp_inactive_widgets'] ) ? $sidebars_widgets['wp_inactive_widgets'] : array());unset( $sidebars_widgets['wp_inactive_widgets'] );foreach ( $wp_registered_sidebars as $id => $settings ) {if ( $theme_changed ) {$_sidebars_widgets[$id] = array_shift( $sidebars_widgets );} else {// no theme change, grab only sidebars that are currently registeredif ( isset( $sidebars_widgets[$id] ) ) {$_sidebars_widgets[$id] = $sidebars_widgets[$id];unset( $sidebars_widgets[$id] );}}}foreach ( $sidebars_widgets as $val ) {if ( is_array($val) && ! empty( $val ) )$_sidebars_widgets['orphaned_widgets_' . ++$orphaned] = $val;}}// discard invalid, theme-specific widgets from sidebars$shown_widgets = array();foreach ( $_sidebars_widgets as $sidebar => $widgets ) {if ( !is_array($widgets) )continue;$_widgets = array();foreach ( $widgets as $widget ) {if ( isset($wp_registered_widgets[$widget]) )$_widgets[] = $widget;}$_sidebars_widgets[$sidebar] = $_widgets;$shown_widgets = array_merge($shown_widgets, $_widgets);}$sidebars_widgets = $_sidebars_widgets;unset($_sidebars_widgets, $_widgets);// find hidden/lost multi-widget instances$lost_widgets = array();foreach ( $wp_registered_widgets as $key => $val ) {if ( in_array($key, $shown_widgets, true) )continue;$number = preg_replace('/.+?-([0-9]+)$/', '$1', $key);if ( 2 > (int) $number )continue;$lost_widgets[] = $key;}$sidebars_widgets['wp_inactive_widgets'] = array_merge($lost_widgets, (array) $sidebars_widgets['wp_inactive_widgets']);if ( 'customize' !== $theme_changed ) {wp_set_sidebars_widgets( $sidebars_widgets );}return $sidebars_widgets;}
-
WordPressを読む 68-3 /blog/wp-includes/widgets.php 3
2014/12/04 Wordpress
/blog/wp-includes/widgets.php3 [crayon-6 …
-
WordPressを読む 68-2 /blog/wp-includes/widgets.php 2
2014/12/04 Wordpress
/blog/wp-includes/widgets.php2 [crayon-6 …
-
WordPressを読む 68-1 /blog/wp-includes/widgets.php 1
2014/12/04 Wordpress
/blog/wp-includes/widgets.php1 WP_Widget …
-
WordPressを読む 67-6 /blog/wp-includes/class-http.php 6
2014/12/04 Wordpress
/blog/wp-includes/class-http.php6 [crayo …
-
WordPressを読む 67-5 /blog/wp-includes/class-http.php 5
2014/12/04 Wordpress
/blog/wp-includes/class-http.php5 [crayo …
-
WordPressを読む 67-4 /blog/wp-includes/class-http.php 4
2014/12/04 Wordpress
/blog/wp-includes/class-http.php4 [crayo …
-
WordPressを読む 67-3 /blog/wp-includes/class-http.php 3
2014/12/04 Wordpress
/blog/wp-includes/class-http.php3 [crayo …
-
WordPressを読む 67-2 /blog/wp-includes/class-http.php 2
2014/12/04 Wordpress
/blog/wp-includes/class-http.php2 [crayo …
-
WordPressを読む 67-1 /blog/wp-includes/class-http.php1
2014/12/04 Wordpress
/blog/wp-includes/class-http.php1 クラス WP …