Skip to content

The 2 Hours After the WordPress 5 Minute Install

Dear Reader,

I now run WordPress on 4 of my web properties. So let me first say a big thank you to the entire WordPress development community for all their work. It’s an excellent platform for the types of projects I’ve been working on lately. More importantly, it allows me to get going quickly and move on to working on my main idea.

In the process of installing and managing these properties, I’ve learned just a little bit about WordPress and decided that I had better document some of it before it falls out the back of my head. So while I was spending time yesterday installing and configuring WordPress for, I decided to document my steps. I’m putting them down here, mainly for me but if you find it useful as well, I’m glad.

These are the steps I take in installing a basic WordPress site. If you are not sure why you would want to use WordPress, check out “The Secret to Cheap and Easy Websites” over at my podcast, Sixty Second Tech.

Pre-Install Preparation

  • The night before you want to do the install, make sure you make any DNS changes that need to be made. If you have the site parked, go ahead and move it. Yes, I know change are distributed in 5 minutes these days but it takes a while for some people to see the change, especially Google. (That’s important when we get to the sitemap section.)
  • Pick a theme. There are some good, free, WordPress theme sites out there. There are also some very talented designers who are happy to build you a site from scratch. Which ever way you decide to go, do it before you start your install.

Installing and configuring WordPress

  1. Install WordPress
    There are several good options for doing this. On my hosting service, we have Installatron that will walk you through it. You host may have another installer but the thing you want to ask yourself is do you want to bother with the nuts and bolts of the install or do you want to trust the installer? If you trust your installer, it will be quicker overall but you have to make sure that they upgrade on a regular basis. Otherwise you may be stuck unable to upgrade your installation later. Your other option is of course, WordPress’ famous 5 Minute Install.

    No matter which way you go, you need to follow the instructions to get a working installation.

  2. Change the Admin password
    The last step in your install gives you a randomly generated password for the admin account. Log in right now and change it. Go ahead and setup the entire admin account while you are there. WordPress 2.5 has a great new feature that helps you decide whether the password you have chosen is secure or not. This is the key to the kingdom so you will want to make sure it’s secure but memorable.
  3. Delete default post
    Go ahead and get rid of it. The thing you don’t want is for your new feed to start with the default “This is a new WordPress” message, it just looks amateurish.
  4. Delete About Page
    Same reasoning as above. Unless you have content to go into it immediately, go ahead and get rid of it. Worst case scenario, you will have to add it back in later when you have content to put in it.
  5. Change the settings in Settings->General
    Go ahead and change the name of your blog, the tagline and browse the other options while you are there. As with the default post, the idea here is not to look like an amature by leaving “Just another WordPress blog” in the tagline. You can always revisit this section after you are up and running and fine tune the settings.
  6. Activate Permalinks
    If you are going to activate Permalinks (and I always do) then do it now. In a couple of steps we are going to be building our sitemap and we want the URLs to be correct for that. Click on Settings and then Permalinks check everything over and then save changes.
  7. Install Your Theme
    Hopefully you took my advice and have already selected your theme or had one designed for you. If not, stop now, go get you one, we’ll wait. Now, once you have it, fire up your FTP program and upload it into wp-content/themes. Then in the Admin control panel, select Design and activate the theme you just uploaded.
  8. Activate Akismet (optional)
    If you are going to allow comments on your blog (and that’s not a given, it’s a choice) then you will want Akismet installed and activated. If you are not familiar with Akismet, it helps control spam comments. It’s free and it comes with WordPress so all you do is have to install and configure. If you don’t have one already, you need a WordPress API Key for Akismet to work. They are free, you just need to go to and register. If you already have an account with and an API key, you can use it on multiple blogs.
  9. Setup Feedburner feed
    I run all my feeds through feedburner because it gives me the stats I want on my feed reader. FeedBurner (Google) has a FeedBurner plugin for WordPress that makes everything simple. It’s a multi-step process though so I’ll list them.
    1. Create a FeedBurner account.
    2. Register your feed with feedburner
    3. Install the plugin.
    4. Activate the plugin
    5. Configure the plugin
    6. In a browser, visit http://yourblog/feed/ and make sure it’s working. If it’s not, backtrack and make sure you’ve got everything configured correctly.
  10. Register with Friend Feed
    Ok, you’ve got a feed, let’s use it. If you have a account, go ahead and register your feed with it. If you don’t have one, is a great tool for aggregating all of your content into a single feed that people can follow. Of course your new feed won’t have any content in it because we deleted the default post earlier. Registering now will ensure that when you do post for the first time on your new blog, it will be listed.
  11. Install Google Sitemap XML Plugin
    Sitemaps are an important way to get your site spidered. Since it’s an off-site service like Akismet and FeedBurner, installing and configuring is a multi-step process.
    1. Register with
    2. Install the plugin.
    3. Configure the plugin. You may have some trouble at this point. Some systems are finicky about permissions. If, after configuring everything, you still can’t generate a sitemap because of permissions issues, here’s a tip. Create a file on your local computer called sitemap.xml, just an empty text file. Now, upload that file into the root of your blog. Now you should be able to create your sitemap. You will probably need to do the same thing with sitemap.xml.gz and possibly robots.txt.
    4. Go to and register your site and then your new sitemap. This can be tricky and it’s really beyond the scope of this article to describe. The only advice I have is what I gave in the pre-install instructions, make sure you make any DNS changes the night before. Google caches DNS entires for about eight hours. Any changes you make just before installing may slow things down a bit.
  12. Install wp-db-backup
    If your blog is important to you then make sure you have nightly backups. Code is easy to reinstall, the hear of your blog is the database. I use wp-db-backup to do this on a daily basis for all my blogs.
  13. Install SimpleTags
    Tagging is an important part of blogging. To help me tag my posts I install SimpleTags. It allows me to use TagTheNet to analyze my post and suggest tags. It also takes care of “related posts” and even has a TagCloud widget. It will also place your tags in your header if you don’t have the following plugin installed.
  14. Install All in one SEO Plugin
    This is going to surprise a lot of you that know me and know my feelings about SEO but yes I use All in one SEO plugin. No, I don’t think it helps my page-rank one bit, my content does that and I preach this message every chance I get. However All in one SEO gives me a degree of control over keywords and the title field that I occasionally want. I always install this plugin because it’s simple to install, requires very little configuration and when I want to tinker with things I can. Don’t take this as an endorsement of anything revolving around SEO though.
  15. Write something!
    If you don’t have a blog post ready to go, why did you go through the last 2 hours of work? Seriously, the point of all of this is to give you a place to blog. Don’t skip the most important part, Write something and write something relevant.

I hope you’ve learned something. Feel free to post any additions to the process that you normally go through. I’ve done this countless times now but I’m still learning new tricks.

Until next time,

Odds and Ends

Dear Reader,

Yes, I’m still alive and no I’ve not taken to just shoveling up the crap the “devzone”: turns down. I’ll return to blogging soon and even to “blogblinging”: But here’s what’s up right now.

The company I was working for is in a bit of a financial pickle. I’ve picked up a short-term contract doing some super-secret cool stuff but it’s not permanent. So if you know of anyone looking for someone to take their development team to the next level, send them my way. “Obligatory link to my resume”: I have a lead on something permanent if this contract goes well but I don’t have a feel for that yet so I don’t want to jinx it.

I’ve been working a lot in “AJAX”: for the past couple of days using the “YAHOO library”: I must say that it is an impressive if large piece of code. I’ve been using the “dragdrop”: portion of the code and am really liking what I see. It’s not as ‘user friendly’ as “”: but it’s much more powerful. I started this project in “”: but had to abandon it because I couldn’t get the fine-grain control I needed. Basically, IMHO, “”: is great if you are looking to Web 2.0-erize your site but if you are building a serious application, you are going to need “YAHOO library”: When I finish I’ll blog togehter a little tutorial about what I learned because a lot of what I’m learning I’m having to learn by reading other people’s code and keep trying different things till something works. (Old-school, cave-man coding)

Someone reported today a problem with “WP-Notable”: and “WordPress 1.5.1”: I don’t have a 1.5.x blog running anymore so I can’t test it. I know what the problem is but 1.5.1 doesn’t support the function I need to call. So for the moment, if you are running 1.5.x I highly recommend you use one of the other packages that do this. (No, I won’t point you to one, google around, you’ll find them.)

I’m working on my “tagcloud”: project. I’ve decided that it needs a second dimension. Right now size indicates popularity of the topic. (Well, it really depends on how you set your CSS) I also want to be able to imply a second dimension. In the test case I’m working on, I want to confer relative age of the topic. (Very popular but old isn’t interesting, kinda like George Clooney) I’ll be doing this by fading the color as the second dimension.

Anyhow, that is what’s up with Cal. Hope you’ve enjoyed it. Hey, in case you missed the memo, my weekly “Zend Framework Mailinglist”: Roundups now have their own tag. Check them out “here”:

Until next time,


Another “Notable” update

Dear Reader,

Yep, it’s that time again. Time to dive in, grab the new code and beat it into submission.

I’ve updated WP-NOTABLE, part of the BlogBling line of plugins. I fixed a problem where it would reset your options each time you went to the admin page. I’ve also implemented support for thanks to their support department sending me the code.

You can download from the Project Page. Complete (and hopefully user friendly) instructions are there as well.

Until next time,


BlogBling General Update

Dear Reader,

This is for all of you who use my blogbling plugins. I’m in the process of updating them all. I’ve updated WP-NOTABLE and WP-ESBN and WP-FATTER but the rest will be updated soon. The reason for the update is that it was pointed out to me that the plugins that ran in the_loop were causing a lot of hits on the database. I’m updating them all to be more database friendly.

Also, I’ve recently updated to WordPress 2.0.2 All plugins seem to be working fine. The only thing I had to do was check my ESBN options, for some reason, they did not survive the deactivate/Activate. I’ll look into that.

To the best of my knowledge all of the ones recently updates are now working correctly. Feel free to correct me on this.

Until next time,

Notable Update

Dear Reader,

Yep, it’s that time again. Time to artificially inflate my stats by releasing yet another update to one of my plugins. Many thanks to badrad (sorry, I don’t have a link to your blog) for pointing out to me that in it’s original form, it was making 12 calls to the database for each story, on each page load! While I’m working on reducing that number to 1 per page load, currently, I have it down to 1 per story.

Also, thanks to Faber at He took it upon himself to figure out the plugin and send me the code necessary to include his service. That was very nice of him. Since I had to re-write anyhow, I decided to re-write the part that adds new services in to make it easier for others to add them in. If you have a social bookmarking service and want to be included, either grab the code and send me the updates and a correctly sized graphic or just send me the graphic and your API. (HINT: Those who do the work themselves get included faster.)

Oh, the code now generates span tag around each element with both a class and an id. The project page includes some basic instructions to create an effect.

Anyhow, now that you are complete bored, head over to the project page and grab the latest version. The page gives Install as well as UPGRADE instructions.

Until next time,