WordPress 3.4.2
[autoinstalls/wordpress.git] / wp-content / themes / twentyten / header.php
1 <?php
2 /**
3  * The Header for our theme.
4  *
5  * Displays all of the <head> section and everything up till <div id="main">
6  *
7  * @package WordPress
8  * @subpackage Twenty_Ten
9  * @since Twenty Ten 1.0
10  */
11 ?><!DOCTYPE html>
12 <html <?php language_attributes(); ?>>
13 <head>
14 <meta charset="<?php bloginfo( 'charset' ); ?>" />
15 <title><?php
16         /*
17          * Print the <title> tag based on what is being viewed.
18          */
19         global $page, $paged;
20
21         wp_title( '|', true, 'right' );
22
23         // Add the blog name.
24         bloginfo( 'name' );
25
26         // Add the blog description for the home/front page.
27         $site_description = get_bloginfo( 'description', 'display' );
28         if ( $site_description && ( is_home() || is_front_page() ) )
29                 echo " | $site_description";
30
31         // Add a page number if necessary:
32         if ( $paged >= 2 || $page >= 2 )
33                 echo ' | ' . sprintf( __( 'Page %s', 'twentyten' ), max( $paged, $page ) );
34
35         ?></title>
36 <link rel="profile" href="http://gmpg.org/xfn/11" />
37 <link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( 'stylesheet_url' ); ?>" />
38 <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" />
39 <?php
40         /* We add some JavaScript to pages with the comment form
41          * to support sites with threaded comments (when in use).
42          */
43         if ( is_singular() && get_option( 'thread_comments' ) )
44                 wp_enqueue_script( 'comment-reply' );
45
46         /* Always have wp_head() just before the closing </head>
47          * tag of your theme, or you will break many plugins, which
48          * generally use this hook to add elements to <head> such
49          * as styles, scripts, and meta tags.
50          */
51         wp_head();
52 ?>
53 </head>
54
55 <body <?php body_class(); ?>>
56 <div id="wrapper" class="hfeed">
57         <div id="header">
58                 <div id="masthead">
59                         <div id="branding" role="banner">
60                                 <?php $heading_tag = ( is_home() || is_front_page() ) ? 'h1' : 'div'; ?>
61                                 <<?php echo $heading_tag; ?> id="site-title">
62                                         <span>
63                                                 <a href="<?php echo home_url( '/' ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a>
64                                         </span>
65                                 </<?php echo $heading_tag; ?>>
66                                 <div id="site-description"><?php bloginfo( 'description' ); ?></div>
67
68                                 <?php
69                                         // Compatibility with versions of WordPress prior to 3.4.
70                                         if ( function_exists( 'get_custom_header' ) ) {
71                                                 // We need to figure out what the minimum width should be for our featured image.
72                                                 // This result would be the suggested width if the theme were to implement flexible widths.
73                                                 $header_image_width = get_theme_support( 'custom-header', 'width' );
74                                         } else {
75                                                 $header_image_width = HEADER_IMAGE_WIDTH;
76                                         }
77
78                                         // Check if this is a post or page, if it has a thumbnail, and if it's a big one
79                                         if ( is_singular() && current_theme_supports( 'post-thumbnails' ) &&
80                                                         has_post_thumbnail( $post->ID ) &&
81                                                         ( /* $src, $width, $height */ $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'post-thumbnail' ) ) &&
82                                                         $image[1] >= $header_image_width ) :
83                                                 // Houston, we have a new header image!
84                                                 echo get_the_post_thumbnail( $post->ID );
85                                         elseif ( get_header_image() ) :
86                                                 // Compatibility with versions of WordPress prior to 3.4.
87                                                 if ( function_exists( 'get_custom_header' ) ) {
88                                                         $header_image_width  = get_custom_header()->width;
89                                                         $header_image_height = get_custom_header()->height;
90                                                 } else {
91                                                         $header_image_width  = HEADER_IMAGE_WIDTH;
92                                                         $header_image_height = HEADER_IMAGE_HEIGHT;
93                                                 }
94                                         ?>
95                                                 <img src="<?php header_image(); ?>" width="<?php echo $header_image_width; ?>" height="<?php echo $header_image_height; ?>" alt="" />
96                                         <?php endif; ?>
97                         </div><!-- #branding -->
98
99                         <div id="access" role="navigation">
100                           <?php /* Allow screen readers / text browsers to skip the navigation menu and get right to the good stuff */ ?>
101                                 <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>
102                                 <?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. */ ?>
103                                 <?php wp_nav_menu( array( 'container_class' => 'menu-header', 'theme_location' => 'primary' ) ); ?>
104                         </div><!-- #access -->
105                 </div><!-- #masthead -->
106         </div><!-- #header -->
107
108         <div id="main">