Update: OK, so at least one person wanted it as a plugin, so feel free to download Intermittent Date Headers.
Here’s a code snippet that’s not really worth making into a plugin. It’s designed to put date headers into your main post listing page. As an example, you could end up with:
Heading: March, 2008
Post: dated 15th March
Post: dated 28th March
Post: dated 29th March
Heading: April, 2008
Post: dated 1st April
Post: dated 4th April
The function takes it’s degree of granularity from the date format you give it. So you can choose to have a month header, and each months posts below each header, or to have a daily header, and all of that days posts below each header. The parameters you pass are exactly the same as for the the_date template tag.
The code
Paste the code below into the functions.php file in your theme, if functions.php doesn’t exist then create it.
// For use on pages which list posts, and to be used within the_loop(). Outputs a
// date header to split up the post listings. See the_date() template tag docs for
// usage: http://codex.wordpress.org/Template_Tags/the_date
function intermittent_date_header( $d='', $before='', $after='', $echo = true )
{
global $idh_last_date_header;
// Get the current date
$date_header = the_date( $d, $before, $after, false );
// If it's the same, don't bother continuing
if ( $date_header == $idh_last_date_header ) return;
// Record the current date header as the last one
$idh_last_date_header = $date_header;
// Decide what to do, and do it. Return, or echo...
if ( ! $echo ) return $date_header;
echo $date_header;
}
Comments and questions welcome. (BTW, if people want this as a plugin, let me know.)
Fab! I’ve ALWAYS wanted this and couldn’t believe it wasn’t standard. Thanks
Hi Tom – I was worried about putting this snippet up, because it felt like I *must* have missed something and people would laugh and point at the obvious standard function to do it… I’m glad there’s someone to stand next to me when that finally happens. ;)
This is what I’ve been endlessly searching for, but I can’t get it to work. Although I can navigate my way around code, I’m relatively new to all of this. How exactly do I set this up? (I have WordPress 2.6) Any further feedback would be tremendously appreciated.
Here’s my original functions.php….
And here’s my index….
<a href=”” title=””>
//
<div class=”post” id=”post-“>
For some reason, my functions code and index code that I pasted into my last comment wouldn’t show up. But any further help in getting a date header to work would be awesome.
Hi Chris. Probably easier to install the plugin (http://wordpress.org/extend/plugins/intermittent-date/) and then add the new template tag to your theme, the template tag needs to be inside The Loop. From the code you sent me, I would put it before the DIV element with a class of “post” (i.e. just at the very beginning of The Loop. As I mention above, the syntax for date display is the same as the standard WordPress date and time template tags.
Simon- Thank you!!!
Hello Simon!
I’ve been looking for a plugin that did exactly this, but i cannot get it working properly.
What I need is precisely this, a list of all the posts (in this case by author), but by month:
August 2008
Post
Post
Post
July 2008
Post
Post
Post
I installed the plugin and added the code line, but it’s not working. Here’s the site and the code, i’d really appreciate any help :)))
http://www.elblogalternativo.com/author/can-men/
<?php intermittent_date( 'jS F Y', "", "" ); ?> | <a href="" rel="bookmark" title="Permanent Link to ">
Erik uncovered an issue with Intermittent Date, the bug is fixed in v1.1 – download it here! Thanks Erik!
Hi Simon does this plugin his job with WP 2.7?
because it sounds very good and a user asked for something at our german WP support forum
thanks
Monika
Hi Monika. I see no reason why the plugin shouldn’t work in WordPress 2.7, give it a whirl and let us know the results; I’m happy to fix any issues you find.
oh Simon this time I have 45plugins in my *test it Monika* folder…
and — at Austria a day have only 24 hours – ;)
ok I copy it in this folder ….
regards
Monika (with a blink in my eyes)
You only have 24 hours in Austria?!? Darn it, there goes my “move to Austria for the greater productivity” plan. ;)
oh no! ….
come! upper austria is so nice..
wonderful cafes – not only coffee shops – cafes ..there you can sit with one coffee for hours and plan your work … full productivity!
or our lakes— swimming -trim your body and your soul and you’ll get the best productivity …
after this you realize there is WP and its plugins and you have to testing them out and you get depressive because it is a hard work to do this so you need one or two hours at a cafe …..
..
.
;)
Hello!
Very Interesting post! Thank you for such interesting resource!
PS: Sorry for my bad english, I’v just started to learn this language ;)
See you!
Your, Raiul Baztepo
Thanks for this – perfect for digest style posting. You rock. :)
Hi! This is just what I need!
For some reason I seem to be having trouble with the $before and $after params — the codes I put in them simply aren’t showing up (WP 3.3.1). Is anyone else having this behavior, or just me?
Cheers.