WordPress.org

Make WordPress Core

Ticket #17351: theme-options.php.diff

File theme-options.php.diff, 4.5 KB (added by dcowgill, 3 years ago)

Updated diff to the latest in trunk.

  • wp-content/themes/twentyeleven/inc/theme-options.php

     
    118118                        'value' => 'light', 
    119119                        'label' => __( 'Light', 'twentyeleven' ), 
    120120                        'thumbnail' => get_template_directory_uri() . '/inc/images/light.png', 
     121                        'default_link_color' => '#1b8be0', 
    121122                ), 
    122123                'dark' => array( 
    123124                        'value' => 'dark', 
    124125                        'label' => __( 'Dark', 'twentyeleven' ), 
    125126                        'thumbnail' => get_template_directory_uri() . '/inc/images/dark.png', 
     127                        'default_link_color' => '#e4741f', 
    126128                ), 
    127129        ); 
    128130 
     
    164166function twentyeleven_get_default_theme_options() { 
    165167        $default_theme_options = array( 
    166168                'color_scheme' => 'light', 
    167                 'link_color'   => '#1b8be0', 
     169                'link_color'   => twentyeleven_get_default_link_color( 'light' ), 
    168170                'theme_layout' => 'content-sidebar', 
    169171        ); 
    170172 
     
    172174} 
    173175 
    174176/** 
     177 * Returns the default link color for Twenty Eleven, based on color scheme. 
     178 * 
     179 * @since Twenty Eleven 1.0 
     180 * 
     181 * @param $string $color_scheme Color scheme. Defaults to the active color scheme. 
     182 * @return $string Color. 
     183*/ 
     184function twentyeleven_get_default_link_color( $color_scheme = null ) { 
     185        if ( null === $color_scheme ) { 
     186                $options = twentyeleven_get_theme_options(); 
     187                $color_scheme = $options['color_scheme']; 
     188        } 
     189 
     190        $color_schemes = twentyeleven_color_schemes(); 
     191        if ( ! isset( $color_schemes[ $color_scheme ] ) ) 
     192                return false; 
     193 
     194        return $color_schemes[ $color_scheme ]['default_link_color']; 
     195} 
     196 
     197/** 
    175198 * Returns the options array for Twenty Eleven. 
    176199 * 
    177200 * @since Twenty Eleven 1.0 
     
    208231                                        <td> 
    209232                                                <fieldset><legend class="screen-reader-text"><span><?php _e( 'Color Scheme', 'twentyeleven' ); ?></span></legend> 
    210233                                                <?php 
    211                                                         foreach ( twentyeleven_color_schemes() as $color ) { 
     234                                                        foreach ( twentyeleven_color_schemes() as $scheme ) { 
    212235                                                                ?> 
    213236                                                                <div class="layout"> 
    214237                                                                <label class="description"> 
    215                                                                         <input type="radio" name="twentyeleven_theme_options[color_scheme]" value="<?php echo esc_attr( $color['value'] ); ?>" <?php checked( $options['color_scheme'], $color['value'] ); ?> /> 
     238                                                                        <input type="radio" name="twentyeleven_theme_options[color_scheme]" value="<?php echo esc_attr( $scheme['value'] ); ?>" <?php checked( $options['color_scheme'], $scheme['value'] ); ?> /> 
    216239                                                                        <span> 
    217                                                                                 <img src="<?php echo esc_url( $color['thumbnail'] ); ?>" alt=""/> 
    218                                                                                 <?php echo $color['label']; ?> 
     240                                                                                <img src="<?php echo esc_url( $scheme['thumbnail'] ); ?>" width="136" height="122" /> 
     241                                                                                <?php echo $scheme['label']; ?> 
    219242                                                                        </span> 
    220243                                                                </label> 
    221244                                                                </div> 
     
    234257                                                        <input type="button" class="pickcolor button hide-if-no-js" value="<?php esc_attr_e( 'Select a Color', 'twentyeleven' ); ?>" /> 
    235258                                                        <div id="colorPickerDiv" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div> 
    236259                                                        <br /> 
    237                                                         <small class="description"><?php printf( __( 'Default color: %s', 'twentyeleven' ), $default_options['link_color'] ); ?></small> 
     260                                                        <span><?php printf( __( 'Default color: %s', 'twentyeleven' ), '<span id="default-color">' . twentyeleven_get_default_link_color( $options['color_scheme'] ) . '</span>' ); ?></span>  
    238261                                                </fieldset> 
    239262                                        </td> 
    240263                                </tr> 
     
    249272                                                                <label class="description"> 
    250273                                                                        <input type="radio" name="twentyeleven_theme_options[theme_layout]" value="<?php echo esc_attr( $layout['value'] ); ?>" <?php checked( $options['theme_layout'], $layout['value'] ); ?> /> 
    251274                                                                        <span> 
    252                                                                                 <img src="<?php echo esc_url( $layout['thumbnail'] ); ?>" alt=""/> 
     275                                                                                <img src="<?php echo esc_url( $layout['thumbnail'] ); ?>" width="136" height="122" /> 
    253276                                                                                <?php echo $layout['label']; ?> 
    254277                                                                        </span> 
    255278                                                                </label> 
     
    282305        // Color scheme must be in our array of color scheme options 
    283306        if ( isset( $input['color_scheme'] ) && array_key_exists( $input['color_scheme'], twentyeleven_color_schemes() ) ) 
    284307                $output['color_scheme'] = $input['color_scheme']; 
     308                 
     309        // Our defaults for the link color may have changed, based on the color scheme.  
     310        $output['link_color'] = $defaults['link_color'] = twentyeleven_get_default_link_color( $output['color_scheme'] ); 
    285311 
    286312        // Link color must be 3 or 6 hexadecimal characters 
    287313        if ( isset( $input['link_color'] ) && preg_match( '/^#?([a-f0-9]{3}){1,2}$/i', $input['link_color'] ) )