single.php

Description: Displays a single blog post.

This template includes the following templates:

Template Code

<?php get_header(); ?>

	<div id="content" class="widecolumn">

	<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

		<div class="navigation">
			<div class="alignleft"><?php previous_post_link('« %link') ?></div>
			<div class="alignright"><?php next_post_link('%link »') ?></div>
		</div>

		<div class="post" id="post-<?php the_ID(); ?>">
			<h2><a href="<?php echo get_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>

			<div class="entry">
				<?php the_content('<p class="serif">Read the rest of this entry »</p>'); ?>

				<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>
				<?php the_tags( '<p>Tags: ', ', ', '</p>'); ?>

				<p class="postmetadata alt">
					<small>
						This entry was posted
						<?php /* This is commented, because it requires a little adjusting sometimes.
							You'll need to download this plugin, and follow the instructions:
							http://binarybonsai.com/archives/2004/08/17/time-since-plugin/ */
							/* $entry_datetime = abs(strtotime($post->post_date) - (60*120)); echo time_since($entry_datetime); echo ' ago'; */ ?>
						on <?php the_time('l, F jS, Y') ?> at <?php the_time() ?>
						and is filed under <?php the_category(', ') ?>.
						You can follow any responses to this entry through the <?php comments_rss_link('RSS 2.0'); ?> feed.

						<?php if (('open' == $post-> comment_status) && ('open' == $post->ping_status)) {
							// Both Comments and Pings are open ?>
							You can <a href="#respond">leave a response</a>, or <a href="<?php trackback_url(); ?>" rel="trackback">trackback</a> from your own site.

						<?php } elseif (!('open' == $post-> comment_status) && ('open' == $post->ping_status)) {
							// Only Pings are Open ?>
							Responses are currently closed, but you can <a href="<?php trackback_url(); ?> " rel="trackback">trackback</a> from your own site.

						<?php } elseif (('open' == $post-> comment_status) && !('open' == $post->ping_status)) {
							// Comments are open, Pings are not ?>
							You can skip to the end and leave a response. Pinging is currently not allowed.

						<?php } elseif (!('open' == $post-> comment_status) && !('open' == $post->ping_status)) {
							// Neither Comments, nor Pings are open ?>
							Both comments and pings are currently closed.

						<?php } edit_post_link('Edit this entry.','',''); ?>

					</small>
				</p>

			</div>
		</div>

	<?php comments_template(); ?>

	<?php endwhile; else: ?>

		<p>Sorry, no posts matched your criteria.</p>

<?php endif; ?>

	</div>

<?php get_footer(); ?>

This template includes the following tags:

  • abs()
  • array()
  • comments_rss_link()
  • comments_template()
  • edit_post_link()
  • get_footer() is an include tag which includes the file footer.php.
  • get_sidebar() is an include tag which includes the file sidebar.php.
  • get_permalink()
  • have_posts()
  • next_post_link()
  • previous_post_link()
  • the_category()
  • the_content()
  • the_ID()
  • the_post()
  • the_tags()
  • the_time()
  • the_title()
  • the_title_attribute()
  • trackback_url()
  • wp_link_pages()

Other:

  • All the code between <?php if (have_posts()) : ?> and <?php endwhile; ?> constitutes The Loop.

HTML Skeleton

[HEADER.PHP]

<div id="content" class="widecolumn">

	<div class="navigation">
		<div class="alignleft">« Older Entries</div>
		<div class="alignright">Newer Entries »</div>
	</div>

	<div class="post" id="post-[#]">
		<h2>[POST TITLE]</h2>

		<div class="entry">
			<p>[POST CONTENT]</p>

			<p>Tags: [TAGS]</p>

			<p class="postmetadata alt">
				<small>This entry was posted on [DATE] at [TIME] and is filed under [CATEGORIES].
				You can follow any responses to this entry through the [FEED] feed.</small>

			</p>
		</div>
	</div>

	[COMMENTS.PHP or COMMENTS-POPUP.PHP]

</div>

[FOOTER.PHP]

Related CSS Styles


Resources

  • N/A