The default way WordPress creates URLs for your blog posts is in this format: http://www.yourblog.com/index.php?p=2. It’s simple and it works, but it doesn’t describe a great deal about what you’re saying. To be picked up by search engines which look for relevancy against search terms you need a little more.
So here’s my potted guide, accumalated in the last few days, on how to make your blog more search engine friendly, and the resources you need to do it.
The easiest way to create search engine friendly URLs is to set WordPress up to do it from the start – it’s under the Settings menu, entitled Permalinks. I favour a custom pattern like this: /%post_id%/%postname%.htm.
That way my posts are generated with my domain name, the post id, then the name of my post, and .htm is put on the end. All I have to worry about then is to make the post title useful and descriptive. You’ll also need to make sure mod_rewrite is activated on your site hosting – most hosts will have this these days, although my friends at Aress installed it for me.
If you’re like me though, the odds are that you’ve written several blog posts before coming to this conclusion. And that means you have to use a little bit of redirection to make your old blog posts match your new ones.
In the root of your web folder you should have a file called .htaccess. This is the file that contains all of the rules used to make the redirections work. At the beginning you’ll need to add a few extra rules for your old pages. For example:
Redirect 301 http://www.davebenham.co.uk/index.php?p=97 http://www.davebenham.co.uk/97/sensor-sizes-why-a-digital-slr-beats-a-compact-every-time.htm
This rule is saying to put a 301 redirect (this means a permanent redirect, search engine friendly) to make all visitors to my old post go to the new version. You’ll need to add one for every post you made prior to instigating the new URLs.
WordPress provide a good list of resources on the Permalink settings page, these are the resources that helped me set it up:

Facebook
Twitter
RSS