WordPress 3.4
[autoinstalls/wordpress.git] / wp-content / themes / twentyten / header.php
index 54971c930f5370c964d8378baf34c53f5bbfde32..50cb37589dc806432f5c03efe79aaaad3b22567e 100644 (file)
                                <div id="site-description"><?php bloginfo( 'description' ); ?></div>
 
                                <?php
+                                       // Compatibility with versions of WordPress prior to 3.4.
+                                       if ( function_exists( 'get_custom_header' ) ) {
+                                               // We need to figure out what the minimum width should be for our featured image.
+                                               // This result would be the suggested width if the theme were to implement flexible widths.
+                                               $header_image_width = get_theme_support( 'custom-header', 'width' );
+                                       } else {
+                                               $header_image_width = HEADER_IMAGE_WIDTH;
+                                       }
+
                                        // Check if this is a post or page, if it has a thumbnail, and if it's a big one
                                        if ( is_singular() && current_theme_supports( 'post-thumbnails' ) &&
                                                        has_post_thumbnail( $post->ID ) &&
                                                        ( /* $src, $width, $height */ $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'post-thumbnail' ) ) &&
-                                                       $image[1] >= HEADER_IMAGE_WIDTH ) :
+                                                       $image[1] >= $header_image_width ) :
                                                // Houston, we have a new header image!
                                                echo get_the_post_thumbnail( $post->ID );
-                                       elseif ( get_header_image() ) : ?>
-                                               <img src="<?php header_image(); ?>" width="<?php echo HEADER_IMAGE_WIDTH; ?>" height="<?php echo HEADER_IMAGE_HEIGHT; ?>" alt="" />
+                                       elseif ( get_header_image() ) :
+                                               // Compatibility with versions of WordPress prior to 3.4.
+                                               if ( function_exists( 'get_custom_header' ) ) {
+                                                       $header_image_width  = get_custom_header()->width;
+                                                       $header_image_height = get_custom_header()->height;
+                                               } else {
+                                                       $header_image_width  = HEADER_IMAGE_WIDTH;
+                                                       $header_image_height = HEADER_IMAGE_HEIGHT;
+                                               }
+                                       ?>
+                                               <img src="<?php header_image(); ?>" width="<?php echo $header_image_width; ?>" height="<?php echo $header_image_height; ?>" alt="" />
                                        <?php endif; ?>
                        </div><!-- #branding -->
 
                        <div id="access" role="navigation">
-                         <?php /*  Allow screen readers / text browsers to skip the navigation menu and get right to the good stuff */ ?>
+                         <?php /* Allow screen readers / text browsers to skip the navigation menu and get right to the good stuff */ ?>
                                <div class="skip-link screen-reader-text"><a href="#content" title="<?php esc_attr_e( 'Skip to content', 'twentyten' ); ?>"><?php _e( 'Skip to content', 'twentyten' ); ?></a></div>
-                               <?php /* Our navigation menu.  If one isn't filled out, wp_nav_menu falls back to wp_page_menu.  The menu assiged to the primary position is the one used.  If none is assigned, the menu with the lowest ID is used.  */ ?>
+                               <?php /* Our navigation menu. If one isn't filled out, wp_nav_menu falls back to wp_page_menu. The menu assiged to the primary position is the one used. If none is assigned, the menu with the lowest ID is used. */ ?>
                                <?php wp_nav_menu( array( 'container_class' => 'menu-header', 'theme_location' => 'primary' ) ); ?>
                        </div><!-- #access -->
                </div><!-- #masthead -->