web/wp-content/themes/twentyten/loop.php
changeset 194 32102edaa81b
child 204 09a1c134465b
equal deleted inserted replaced
193:2f6f6f7551ca 194:32102edaa81b
       
     1 <?php
       
     2 /**
       
     3  * The loop that displays posts.
       
     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.php or
       
    11  * loop-template.php, where 'template' is the loop context
       
    12  * requested by a template. For example, loop-index.php would
       
    13  * be used if it exists and we ask for the loop with:
       
    14  * <code>get_template_part( 'loop', 'index' );</code>
       
    15  *
       
    16  * @package WordPress
       
    17  * @subpackage Twenty_Ten
       
    18  * @since Twenty Ten 1.0
       
    19  */
       
    20 ?>
       
    21 
       
    22 <?php /* Display navigation to next/previous pages when applicable */ ?>
       
    23 <?php if ( $wp_query->max_num_pages > 1 ) : ?>
       
    24 	<div id="nav-above" class="navigation">
       
    25 		<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">&larr;</span> Older posts', 'twentyten' ) ); ?></div>
       
    26 		<div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?></div>
       
    27 	</div><!-- #nav-above -->
       
    28 <?php endif; ?>
       
    29 
       
    30 <?php /* If there are no posts to display, such as an empty archive page */ ?>
       
    31 <?php if ( ! have_posts() ) : ?>
       
    32 	<div id="post-0" class="post error404 not-found">
       
    33 		<h1 class="entry-title"><?php _e( 'Not Found', 'twentyten' ); ?></h1>
       
    34 		<div class="entry-content">
       
    35 			<p><?php _e( 'Apologies, but no results were found for the requested archive. Perhaps searching will help find a related post.', 'twentyten' ); ?></p>
       
    36 			<?php get_search_form(); ?>
       
    37 		</div><!-- .entry-content -->
       
    38 	</div><!-- #post-0 -->
       
    39 <?php endif; ?>
       
    40 
       
    41 <?php
       
    42 	/* Start the Loop.
       
    43 	 *
       
    44 	 * In Twenty Ten we use the same loop in multiple contexts.
       
    45 	 * It is broken into three main parts: when we're displaying
       
    46 	 * posts that are in the gallery category, when we're displaying
       
    47 	 * posts in the asides category, and finally all other posts.
       
    48 	 *
       
    49 	 * Additionally, we sometimes check for whether we are on an
       
    50 	 * archive page, a search page, etc., allowing for small differences
       
    51 	 * in the loop on each template without actually duplicating
       
    52 	 * the rest of the loop that is shared.
       
    53 	 *
       
    54 	 * Without further ado, the loop:
       
    55 	 */ ?>
       
    56 <?php while ( have_posts() ) : the_post(); ?>
       
    57 
       
    58 <?php /* How to display posts of the Gallery format. The gallery category is the old way. */ ?>
       
    59 
       
    60 	<?php if ( ( function_exists( 'get_post_format' ) && 'gallery' == get_post_format( $post->ID ) ) || in_category( _x( 'gallery', 'gallery category slug', 'twentyten' ) ) ) : ?>
       
    61 		<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
       
    62 			<h2 class="entry-title"><a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'twentyten' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2>
       
    63 
       
    64 			<div class="entry-meta">
       
    65 				<?php twentyten_posted_on(); ?>
       
    66 			</div><!-- .entry-meta -->
       
    67 
       
    68 			<div class="entry-content">
       
    69 <?php if ( post_password_required() ) : ?>
       
    70 				<?php the_content(); ?>
       
    71 <?php else : ?>
       
    72 				<?php
       
    73 					$images = get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order', 'order' => 'ASC', 'numberposts' => 999 ) );
       
    74 					if ( $images ) :
       
    75 						$total_images = count( $images );
       
    76 						$image = array_shift( $images );
       
    77 						$image_img_tag = wp_get_attachment_image( $image->ID, 'thumbnail' );
       
    78 				?>
       
    79 						<div class="gallery-thumb">
       
    80 							<a class="size-thumbnail" href="<?php the_permalink(); ?>"><?php echo $image_img_tag; ?></a>
       
    81 						</div><!-- .gallery-thumb -->
       
    82 						<p><em><?php printf( _n( 'This gallery contains <a %1$s>%2$s photo</a>.', 'This gallery contains <a %1$s>%2$s photos</a>.', $total_images, 'twentyten' ),
       
    83 								'href="' . get_permalink() . '" title="' . sprintf( esc_attr__( 'Permalink to %s', 'twentyten' ), the_title_attribute( 'echo=0' ) ) . '" rel="bookmark"',
       
    84 								number_format_i18n( $total_images )
       
    85 							); ?></em></p>
       
    86 				<?php endif; ?>
       
    87 						<?php the_excerpt(); ?>
       
    88 <?php endif; ?>
       
    89 			</div><!-- .entry-content -->
       
    90 
       
    91 			<div class="entry-utility">
       
    92 			<?php if ( function_exists( 'get_post_format' ) && 'gallery' == get_post_format( $post->ID ) ) : ?>
       
    93 				<a href="<?php echo get_post_format_link( 'gallery' ); ?>" title="<?php esc_attr_e( 'View Galleries', 'twentyten' ); ?>"><?php _e( 'More Galleries', 'twentyten' ); ?></a>
       
    94 				<span class="meta-sep">|</span>
       
    95 			<?php elseif ( in_category( _x( 'gallery', 'gallery category slug', 'twentyten' ) ) ) : ?>
       
    96 				<a href="<?php echo get_term_link( _x( 'gallery', 'gallery category slug', 'twentyten' ), 'category' ); ?>" title="<?php esc_attr_e( 'View posts in the Gallery category', 'twentyten' ); ?>"><?php _e( 'More Galleries', 'twentyten' ); ?></a>
       
    97 				<span class="meta-sep">|</span>
       
    98 			<?php endif; ?>
       
    99 				<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'twentyten' ), __( '1 Comment', 'twentyten' ), __( '% Comments', 'twentyten' ) ); ?></span>
       
   100 				<?php edit_post_link( __( 'Edit', 'twentyten' ), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>' ); ?>
       
   101 			</div><!-- .entry-utility -->
       
   102 		</div><!-- #post-## -->
       
   103 
       
   104 <?php /* How to display posts of the Aside format. The asides category is the old way. */ ?>
       
   105 
       
   106 	<?php elseif ( ( function_exists( 'get_post_format' ) && 'aside' == get_post_format( $post->ID ) ) || in_category( _x( 'asides', 'asides category slug', 'twentyten' ) )  ) : ?>
       
   107 		<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
       
   108 
       
   109 		<?php if ( is_archive() || is_search() ) : // Display excerpts for archives and search. ?>
       
   110 			<div class="entry-summary">
       
   111 				<?php the_excerpt(); ?>
       
   112 			</div><!-- .entry-summary -->
       
   113 		<?php else : ?>
       
   114 			<div class="entry-content">
       
   115 				<?php the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?>
       
   116 			</div><!-- .entry-content -->
       
   117 		<?php endif; ?>
       
   118 
       
   119 			<div class="entry-utility">
       
   120 				<?php twentyten_posted_on(); ?>
       
   121 				<span class="meta-sep">|</span>
       
   122 				<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'twentyten' ), __( '1 Comment', 'twentyten' ), __( '% Comments', 'twentyten' ) ); ?></span>
       
   123 				<?php edit_post_link( __( 'Edit', 'twentyten' ), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>' ); ?>
       
   124 			</div><!-- .entry-utility -->
       
   125 		</div><!-- #post-## -->
       
   126 
       
   127 <?php /* How to display all other posts. */ ?>
       
   128 
       
   129 	<?php else : ?>
       
   130 		<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
       
   131 			<h2 class="entry-title"><a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'twentyten' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2>
       
   132 
       
   133 			<div class="entry-meta">
       
   134 				<?php twentyten_posted_on(); ?>
       
   135 			</div><!-- .entry-meta -->
       
   136 
       
   137 	<?php if ( is_archive() || is_search() ) : // Only display excerpts for archives and search. ?>
       
   138 			<div class="entry-summary">
       
   139 				<?php the_excerpt(); ?>
       
   140 			</div><!-- .entry-summary -->
       
   141 	<?php else : ?>
       
   142 			<div class="entry-content">
       
   143 				<?php the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?>
       
   144 				<?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'twentyten' ), 'after' => '</div>' ) ); ?>
       
   145 			</div><!-- .entry-content -->
       
   146 	<?php endif; ?>
       
   147 
       
   148 			<div class="entry-utility">
       
   149 				<?php if ( count( get_the_category() ) ) : ?>
       
   150 					<span class="cat-links">
       
   151 						<?php printf( __( '<span class="%1$s">Posted in</span> %2$s', 'twentyten' ), 'entry-utility-prep entry-utility-prep-cat-links', get_the_category_list( ', ' ) ); ?>
       
   152 					</span>
       
   153 					<span class="meta-sep">|</span>
       
   154 				<?php endif; ?>
       
   155 				<?php
       
   156 					$tags_list = get_the_tag_list( '', ', ' );
       
   157 					if ( $tags_list ):
       
   158 				?>
       
   159 					<span class="tag-links">
       
   160 						<?php printf( __( '<span class="%1$s">Tagged</span> %2$s', 'twentyten' ), 'entry-utility-prep entry-utility-prep-tag-links', $tags_list ); ?>
       
   161 					</span>
       
   162 					<span class="meta-sep">|</span>
       
   163 				<?php endif; ?>
       
   164 				<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'twentyten' ), __( '1 Comment', 'twentyten' ), __( '% Comments', 'twentyten' ) ); ?></span>
       
   165 				<?php edit_post_link( __( 'Edit', 'twentyten' ), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>' ); ?>
       
   166 			</div><!-- .entry-utility -->
       
   167 		</div><!-- #post-## -->
       
   168 
       
   169 		<?php comments_template( '', true ); ?>
       
   170 
       
   171 	<?php endif; // This was the if statement that broke the loop into three parts based on categories. ?>
       
   172 
       
   173 <?php endwhile; // End the loop. Whew. ?>
       
   174 
       
   175 <?php /* Display navigation to next/previous pages when applicable */ ?>
       
   176 <?php if (  $wp_query->max_num_pages > 1 ) : ?>
       
   177 				<div id="nav-below" class="navigation">
       
   178 					<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">&larr;</span> Older posts', 'twentyten' ) ); ?></div>
       
   179 					<div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?></div>
       
   180 				</div><!-- #nav-below -->
       
   181 <?php endif; ?>