Ticket #17240: 17240-random-image.diff
File 17240-random-image.diff, 2.9 KB (added by , 14 years ago) |
---|
-
wp-includes/theme.php
1430 1430 1431 1431 $url = get_theme_mod( 'header_image', $default ); 1432 1432 1433 // If random option is on, choose one from registered images 1434 if ( 'random-image' == $url ) { 1435 global $_wp_default_headers; 1436 if ( !isset( $_wp_default_headers ) || empty( $_wp_default_headers ) ) 1437 return; 1438 if ( 0 < count( $_wp_default_headers ) ) { 1439 $random_image = array_rand( $_wp_default_headers ); 1440 $url = sprintf( $_wp_default_headers[$random_image]['url'], get_template_directory_uri(), get_stylesheet_directory_uri() ); 1441 } 1442 } 1443 1433 1444 if ( is_ssl() ) 1434 1445 $url = str_replace( 'http://', 'https://', $url ); 1435 1446 else -
wp-admin/custom-header.php
199 199 } 200 200 } 201 201 202 if ( isset( $_POST['default-header']) ) {202 if ( isset( $_POST['default-header'] ) ) { 203 203 check_admin_referer( 'custom-header-options', '_wpnonce-custom-header-options' ); 204 204 $this->process_default_headers(); 205 if ( isset($this->default_headers[$_POST['default-header']]) ) 206 set_theme_mod('header_image', esc_url($this->default_headers[$_POST['default-header']]['url'])); 205 if ( 'random-image' == $_POST['default-header'] ) 206 set_theme_mod( 'header_image', 'random-image' ); 207 if ( isset( $this->default_headers[$_POST['default-header']] ) ) 208 set_theme_mod( 'header_image', esc_url( $this->default_headers[$_POST['default-header']]['url'] ) ); 207 209 } 208 210 } 209 211 … … 240 242 $header_url = $header['url']; 241 243 $header_desc = $header['description']; 242 244 echo '<div class="default-header">'; 243 echo '<label><input name="default-header" type="radio" value="' . esc_attr( $header_key) . '" ' . checked($header_url, get_theme_mod( 'header_image' ), false) . ' />';244 echo '<img src="' . $header_thumbnail . '" alt="' . esc_attr( $header_desc) .'" title="' . esc_attr($header_desc) .'" /></label>';245 echo '<label><input name="default-header" type="radio" value="' . esc_attr( $header_key ) . '" ' . checked( $header_url, get_theme_mod( 'header_image' ), false ) . ' />'; 246 echo '<img src="' . $header_thumbnail . '" alt="' . esc_attr( $header_desc ) .'" title="' . esc_attr( $header_desc ) .'" /></label>'; 245 247 echo '</div>'; 246 248 } 249 // Show random image option 250 if ( 0 < count( $this->default_headers ) ) { 251 echo '<div class="default-header">'; 252 echo '<label><input name="default-header" type="radio" value="random-image"' . checked( 'random-image', get_theme_mod( 'header_image' ), false ) . ' />'; 253 echo __( '<strong>Random:</strong> Show a different image on each page.' ); 254 echo '</label>'; 255 echo '</div>'; 256 } 247 257 echo '<div class="clear"></div></div>'; 248 258 } 249 259