I haven't touched the code and templates for my blog for ages, because
I'm hoping at some point to replace it all with a sane CMS. However,
it's about time the navigation was made a bit less crap. Up till now
the only way of getting to older articles (ones which aren't on the front
page) was through a list of every article, which appeared on every page.
The only cover text for the links was the date and time. I had a
title attribute in there, but that just meant lots of hovering the
mouse pointer and waiting for tool tips.
So after a bit of hacking I've removed the listing from each page and put in separate archive pages. I've used the same kind of date-based navigation that I used for The Register's archive, although it's probably overkill for my little back catalog (they have more than 36000 articles, whereas I will have a piddling 80 after posting this). That allows me to have a full listing of all the articles published in a year, which at least makes it less tedious to navigate.
So, after almost two years of infrequent blogging, my nice date-based URLs are finally hackable :-)
I've also stopped publishing the body of each article on the front page. That makes the front page quicker to reload, and should make sure that Google always takes people to the canonical URL for an article.
The CSS I've bodged together for this stuff is pretty crufty, and almost certainly will make it look rubbish on IE. I'll have a look once I've published this, but I don't really care.
I did try one interesting thing with the CSS. I wanted the headings
in the archive to be links to appropriate places, but I didn't want the
whole page to be blue, so I styled them to look like normal headings.
To give people a clue that they are links, I put a crummy little
icon after each link. You can do that with CSS, to avoid putting loads
of <img> elements everywhere:
h1 a:after, h2 a:after, h3 a:after, h4 a:after, h5 a:after { content: url(head_link.png); }
In Firesocks it looks like this:
