WordPress 3.4
[autoinstalls/wordpress.git] / wp-content / themes / twentyten / loop-attachment.php
1 <?php
2 /**
3  * The loop that displays an attachment.
4  *
5  * The loop displays the posts and the post content. See
6  * http://codex.wordpress.org/The_Loop to understand it and
7  * http://codex.wordpress.org/Template_Tags to understand
8  * the tags used in it.
9  *
10  * This can be overridden in child themes with loop-attachment.php.
11  *
12  * @package WordPress
13  * @subpackage Twenty_Ten
14  * @since Twenty Ten 1.2
15  */
16 ?>
17
18 <?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
19
20                                 <?php if ( ! empty( $post->post_parent ) ) : ?>
21                                         <p class="page-title"><a href="<?php echo get_permalink( $post->post_parent ); ?>" title="<?php echo esc_attr( sprintf( __( 'Return to %s', 'twentyten' ), strip_tags( get_the_title( $post->post_parent ) ) ) ); ?>" rel="gallery"><?php
22                                                 /* translators: %s - title of parent post */
23                                                 printf( __( '<span class="meta-nav">&larr;</span> %s', 'twentyten' ), get_the_title( $post->post_parent ) );
24                                         ?></a></p>
25                                 <?php endif; ?>
26
27                                 <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
28                                         <h2 class="entry-title"><?php the_title(); ?></h2>
29
30                                         <div class="entry-meta">
31                                                 <?php
32                                                         printf( __( '<span class="%1$s">By</span> %2$s', 'twentyten' ),
33                                                                 'meta-prep meta-prep-author',
34                                                                 sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span>',
35                                                                         get_author_posts_url( get_the_author_meta( 'ID' ) ),
36                                                                         esc_attr( sprintf( __( 'View all posts by %s', 'twentyten' ), get_the_author() ) ),
37                                                                         get_the_author()
38                                                                 )
39                                                         );
40                                                 ?>
41                                                 <span class="meta-sep">|</span>
42                                                 <?php
43                                                         printf( __( '<span class="%1$s">Published</span> %2$s', 'twentyten' ),
44                                                                 'meta-prep meta-prep-entry-date',
45                                                                 sprintf( '<span class="entry-date"><abbr class="published" title="%1$s">%2$s</abbr></span>',
46                                                                         esc_attr( get_the_time() ),
47                                                                         get_the_date()
48                                                                 )
49                                                         );
50                                                         if ( wp_attachment_is_image() ) {
51                                                                 echo ' <span class="meta-sep">|</span> ';
52                                                                 $metadata = wp_get_attachment_metadata();
53                                                                 printf( __( 'Full size is %s pixels', 'twentyten' ),
54                                                                         sprintf( '<a href="%1$s" title="%2$s">%3$s &times; %4$s</a>',
55                                                                                 wp_get_attachment_url(),
56                                                                                 esc_attr( __( 'Link to full-size image', 'twentyten' ) ),
57                                                                                 $metadata['width'],
58                                                                                 $metadata['height']
59                                                                         )
60                                                                 );
61                                                         }
62                                                 ?>
63                                                 <?php edit_post_link( __( 'Edit', 'twentyten' ), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>' ); ?>
64                                         </div><!-- .entry-meta -->
65
66                                         <div class="entry-content">
67                                                 <div class="entry-attachment">
68 <?php if ( wp_attachment_is_image() ) :
69         $attachments = array_values( get_children( array( 'post_parent' => $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID' ) ) );
70         foreach ( $attachments as $k => $attachment ) {
71                 if ( $attachment->ID == $post->ID )
72                         break;
73         }
74         $k++;
75         // If there is more than 1 image attachment in a gallery
76         if ( count( $attachments ) > 1 ) {
77                 if ( isset( $attachments[ $k ] ) )
78                         // get the URL of the next image attachment
79                         $next_attachment_url = get_attachment_link( $attachments[ $k ]->ID );
80                 else
81                         // or get the URL of the first image attachment
82                         $next_attachment_url = get_attachment_link( $attachments[ 0 ]->ID );
83         } else {
84                 // or, if there's only 1 image attachment, get the URL of the image
85                 $next_attachment_url = wp_get_attachment_url();
86         }
87 ?>
88                                                 <p class="attachment"><a href="<?php echo $next_attachment_url; ?>" title="<?php the_title_attribute(); ?>" rel="attachment"><?php
89                                                         $attachment_width  = apply_filters( 'twentyten_attachment_size', 900 );
90                                                         $attachment_height = apply_filters( 'twentyten_attachment_height', 900 );
91                                                         echo wp_get_attachment_image( $post->ID, array( $attachment_width, $attachment_height ) ); // filterable image width with, essentially, no limit for image height.
92                                                 ?></a></p>
93
94                                                 <div id="nav-below" class="navigation">
95                                                         <div class="nav-previous"><?php previous_image_link( false ); ?></div>
96                                                         <div class="nav-next"><?php next_image_link( false ); ?></div>
97                                                 </div><!-- #nav-below -->
98 <?php else : ?>
99                                                 <a href="<?php echo wp_get_attachment_url(); ?>" title="<?php the_title_attribute(); ?>" rel="attachment"><?php echo basename( get_permalink() ); ?></a>
100 <?php endif; ?>
101                                                 </div><!-- .entry-attachment -->
102                                                 <div class="entry-caption"><?php if ( !empty( $post->post_excerpt ) ) the_excerpt(); ?></div>
103
104 <?php the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?>
105 <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'twentyten' ), 'after' => '</div>' ) ); ?>
106
107                                         </div><!-- .entry-content -->
108
109                                         <div class="entry-utility">
110                                                 <?php twentyten_posted_in(); ?>
111                                                 <?php edit_post_link( __( 'Edit', 'twentyten' ), ' <span class="edit-link">', '</span>' ); ?>
112                                         </div><!-- .entry-utility -->
113                                 </div><!-- #post-## -->
114
115 <?php comments_template(); ?>
116
117 <?php endwhile; // end of the loop. ?>