WordPress SEO

The Definitive Guide To Higher Rankings For Your Blog

I started writing my beginner's guide to WordPress SEO a while back, and have since done a load of posts on the subject, an article in the Search Marketing Standard, newsletters, and presentations. It's time to let all the info of all these different articles fall into one big piece: the final guide to WordPress SEO.

As search, SEO, and the Wordpress platform evolve I will keep this article up to date with best practices.

As I take quite a holistic view on SEO, this guide will cover quite a lot, here's the contents:

  1. The basic technical optimization: simplest stuff, highest rewards
    1. Permalinks
    2. Optimize your Titles for SEO
    3. Optimize your Descriptions
    4. Optimize the More text
    5. Image Optimization
  2. Template optimization
    1. Breadcrumbs
    2. Headings
    3. Clean up your code
    4. Aim for speed
    5. Rethink that Sidebar
  3. Advanced technical optimization: preventing duplicate content
    1. Noindex, follow archive pages
    2. Disable unnecessary archives
    3. Pagination
    4. Nofollowing unnecessary links
  4. Altering your blog's structure for high rankings
    1. Pages instead of posts
    2. New wine in an old bottle: use well ranking-posts to rank even better
    3. Linking to related posts
  5. Conversion optimization: get those readers to subscribe!
  6. Comment optimization: get those readers involved
    1. How should you get people to comment
    2. Bond with your commenters
    3. Keeping people in the conversation
  7. Off site blog SEO
    1. Follow your commenters
    2. Use Twitter
    3. Find related blogs, and work them
  8. Conclusion

1. Basic technical optimization

Out of the box, WordPress is a pretty well optimized system, and does a far better job at allowing every single page to be indexed than every other CMS I have used. But there's a few things you should do to make it a lot easier still to work with.

1.1. Permalinks

The first thing to change is your permalink structure. In WordPress 2.5, you'll find this page under Settings -> Permalinks. The default permalink is
?p=<postid>, but I prefer to use either /post-name/ or /category/post-name/. For the first option, you change the "custom" setting into /%postname%/:

Change the setting of your permalink structure to Custom: /%postname%/

To include the category, you change it to /%category%/%postname%/.

Once you've done that, you'll want to install the Redirection plugin, and make sure that under Manage -> Redirection -> Options, making sure both URL Monitoring select boxes are set to "Modified posts". Now you can change those permalinks to perfectly SEO'd permalinks without having to do anything else, or worry about the search engine consequences.

WWW vs non-WWW
Another good thing to configure now you're on that screen anyway is the Root domain: Add WWW / Strip WWW one. Make a choice, and set it here, don't enable both, some search engines still can't handle that. And enable the redirect index.php/index.html one too, it won't hurt you, and might even do your WordPress SEO some good.

URL stopwords
The last thing you'll want to do about your permalinks to increase your WordPress SEO, is install the SEO Slugs plugin, this will automatically remove stop words from your slugs once you save a post, so you won't get those ugly long URL's when you do a sentence style post title.

1.2. Optimize your Titles for SEO

By default, the title for your blog posts is "Blog title » Blog Archive » Keyword rich post title". For your WordPress blog to get the traffic it deserves, this should be the other way around, for two reasons:

  • Search engines put more weight on the early words, so if your keywords are near the start of the page title you are more likely to rank well.
  • People scanning result pages see the early words first. If your keywords are at the start of your listing your page is more likely to get clicked on.

For more info on how to craft good titles for your posts, see this excellent article and video by Aaron Wall: Google & SEO Friendly Page Titles. I prefer to do this with HeadSpace, as that makes it very very easy. You should check your header.php though, and make sure that the code for wp_title(); contains two quotes, so it looks like this: wp_title('');. This makes sure you have absolute control over the title and don't have any annoying separator in there.

After that, go into the HeadSpace settings, and make them look something like this for your posts and pages:
HeadSpace settings for Posts and Pages

For the other pages, I have the following settings:

  • Posts / Pages: %%title%% - Blog Title
  • Categories: %%category%% Archives %%page%% - Blog Title
  • Tags: %%tag%% Archives %%page%% - Blog Title
  • Archives: Blog Archives %%page%% - Blog Title

With HeadSpace, you can also write optimized titles for each post specifically, overriding the settings here. This way you have absolute control over your titles, and can make sure your WordPress titles are actually helping your SEO.

1.3. Optimize your Descriptions

Give each category a decent description, and use HeadSpace to add that description to the meta description, by adding %%category_description%% in the Description field. After that, write a description for each post or page that you actually want to rank with. The descriptions has one very important function: enticing people to click, so make sure it states what's in the page they're clicking towards, and that it gets their attention.

Automated descriptions
In my opinion