Wordpress 3.7
[autoinstalls/wordpress.git] / wp-includes / widgets.php
index d6f213a1d58f81e801ba3bfa99a11bf26126ba17..6bd99473b7e12ae45ff1a6b1e7a1ed3ee7ea9b51 100644 (file)
@@ -833,20 +833,13 @@ function wp_unregister_widget_control($id) {
 /**
  * Display dynamic sidebar.
  *
- * By default it displays the default sidebar or 'sidebar-1'. The 'sidebar-1' is
- * not named by the theme, the actual name is '1', but 'sidebar-' is added to
- * the registered sidebars for the name. If you named your sidebar 'after-post',
- * then the parameter $index will still be 'after-post', but the lookup will be
- * for 'sidebar-after-post'.
- *
- * It is confusing for the $index parameter, but just know that it should just
- * work. When you register the sidebar in the theme, you will use the same name
- * for this function or "Pay no heed to the man behind the curtain." Just accept
- * it as an oddity of WordPress sidebar register and display.
+ * By default this displays the default sidebar or 'sidebar-1'. If your theme specifies the 'id' or
+ * 'name' parameter for its registered sidebars you can pass an id or name as the $index parameter.
+ * Otherwise, you can pass in a numerical index to display the sidebar at that index.
  *
  * @since 2.2.0
  *
- * @param int|string $index Optional, default is 1. Name or ID of dynamic sidebar.
+ * @param int|string $index Optional, default is 1. Index, name or ID of dynamic sidebar.
  * @return bool True, if widget sidebar was found and called. False if not found or not called.
  */
 function dynamic_sidebar($index = 1) {
@@ -865,11 +858,9 @@ function dynamic_sidebar($index = 1) {
        }
 
        $sidebars_widgets = wp_get_sidebars_widgets();
-       if ( empty( $sidebars_widgets ) )
-               return false;
-
-       if ( empty($wp_registered_sidebars[$index]) || !array_key_exists($index, $sidebars_widgets) || !is_array($sidebars_widgets[$index]) || empty($sidebars_widgets[$index]) )
+       if ( empty( $wp_registered_sidebars[ $index ] ) || empty( $sidebars_widgets[ $index ] ) || ! is_array( $sidebars_widgets[ $index ] ) ) {
                return false;
+       }
 
        $sidebar = $wp_registered_sidebars[$index];
 
@@ -984,10 +975,8 @@ function is_dynamic_sidebar() {
 function is_active_sidebar( $index ) {
        $index = ( is_int($index) ) ? "sidebar-$index" : sanitize_title($index);
        $sidebars_widgets = wp_get_sidebars_widgets();
-       if ( !empty($sidebars_widgets[$index]) )
-               return true;
-
-       return false;
+       $is_active_sidebar = ! empty( $sidebars_widgets[$index] );
+       return $is_active_sidebar;
 }
 
 /* Internal Functions */
@@ -1008,7 +997,7 @@ function wp_get_sidebars_widgets($deprecated = true) {
        if ( $deprecated !== true )
                _deprecated_argument( __FUNCTION__, '2.8.1' );
 
-       global $wp_registered_widgets, $_wp_sidebars_widgets, $sidebars_widgets;
+       global $_wp_sidebars_widgets, $sidebars_widgets;
 
        // If loading from front page, consult $_wp_sidebars_widgets rather than options
        // to see if wp_convert_widget_settings() has made manipulations in memory.
@@ -1172,7 +1161,7 @@ function _wp_sidebars_changed() {
 
 // look for "lost" widgets, this has to run at least on each theme change
 function retrieve_widgets($theme_changed = false) {
-       global $wp_registered_widget_updates, $wp_registered_sidebars, $sidebars_widgets, $wp_registered_widgets;
+       global $wp_registered_sidebars, $sidebars_widgets, $wp_registered_widgets;
 
        $registered_sidebar_keys = array_keys( $wp_registered_sidebars );
        $orphaned = 0;