WordPress.org

Make WordPress Core

Ticket #10954: 10954.2.patch

File 10954.2.patch, 974 bytes (added by hakre, 5 years ago)

Small code improvement this time.

  • wp-includes/widgets.php

    ### Eclipse Workspace Patch 1.0
    #P wordpress-trunk
     
    133133                        $this->_set(1); 
    134134                        $this->_register_one(); 
    135135                } elseif ( is_array($settings) ) { 
     136                        // If there is an array, first assume it contains a numerically 
     137                        // indexed set of options but that's just an assumption 
     138                        $count = 0; 
    136139                        foreach ( array_keys($settings) as $number ) { 
    137140                                if ( is_numeric($number) ) { 
     141                                        $count++; 
    138142                                        $this->_set($number); 
    139143                                        $this->_register_one($number); 
    140144                                } 
     145                        }                        
     146                        // fallback in case the assumption what the array was for 
     147                        // was wrong  
     148                        if ( 0 == $count ) { 
     149                                // If there are none, we register the widget's existance with a 
     150                                // generic template (see if ( empty($settings) ) ) 
     151                                $this->_set(1); 
     152                                $this->_register_one(); 
    141153                        } 
    142154                } 
    143155        }