Jim Westergren
About me, my projects, SEO, Web Development and Personal Development since 2005
"If we did all the things we are capable of, we would literally astound ourselves." - Thomas A. Edison

SEO for WordPress - The Complete Guide

I'm an SEO and I have been working a lot with WordPress, here I give you all my tips for you to rank very well in Google with your blog.

UPDATE: This article was written in march 2007 and has not been updated since then, although many parts are still relevant. You should see my latest article about Wordpress: Hacks to boost your WordPress 2.7 blog.

Quick Facts

  1. There are 55 million blogs out there, if you don't stand out you will have no chance.
  2. The first second of a visitors attention is the most crucial.
  3. Your main traffic should come to articles and posts inside your blog, not the home page.
  4. Search engine rankings relies heavily upon the quality and quantity of links to your blog when they determine the ranking.
  5. The best way to get links is by natural recommendations from other bloggers or web site owners.

Section 1: Optimize Your Blog

Usually the WordPress themes are well designed and structured already but there are a number of things you really should do to improve it for better optimization for search engines.

Using the best URLs

To enable the permalinks is easy and you have probably already done that, just go to Options -> Permalinks in the admin panel. But what format is the best to choose? The structure /%postname%/ - nothing else. This is best because your URLs to your articles should never change. And if you have it like this it does not matter if you change the category of the article or republish it with a new date, it will always be the same URL (more about that later). And if you happen to have two posts with the same title it is not a problem as WordPress will automatically add "-2" in the end.

Have you been using the wrong format? Well, if your blog is not totally new you should not change. It is not vital and for the next time you make a blog you know how to make it right.

Handling URL Canonization

Every WordPress blog has an issue in which there are 4 different URLs for the same post and this has to be fixed to prevent dilution. Follow my guide on how to fix it here.

Title Tags

The title tag is the most important HTML-tag in terms of SEO.

Here are different versions you should use inside the <title></title> located in theme/header.php

Optimum ranking: <?php if(is_home()) { echo 'Your blogs name | Few important words'; } else { wp_title('') ;} ?>

For branding purposes: <?php if(is_home()) { echo 'Your blogs name | Few important words'; } else { echo 'Your blogs name:'; wp_title('') ;} ?>

The best title tag solution for advanced users

Either install and properly use the SEO Title Tag plugin or do the following:

  1. Download and install this plugin.
  2. Replace <?php get_header(); ?> with the context in header.php on single.php, page.php and category.php.
  3. Work out the best titles for the different versions and use the plugin to create different versions of category.php and single.php with their own versions of title tags. For example if your category with ID 5 is "SEO News" you could have the following title tag in single-cat-5.php: <title>SEO News: <?php { wp_title('') ;} ?></title> In category.php you could have: <title><?php { wp_title('') ;} ?> | Your Name</title>


Headings are defined by HTML with H1 (largest) to H6 (smallest). You need to use them in your articles when you write. Your article title should be in a main heading (H1), sub headings with H2 and small headings with H3.

Make sure that in theme/single.php this code <?php the_title(); ?> is wrapped in H1 so that it looks like: <h1><?php the_title(); ?></h1>

If your theme designer already used a specific CSS design for the heading tags you can do like this:

  1. Open up theme/single.php and add <div class="singleheadings"> to the top after <?php get_header(); ?> and </div> to the bottom before <?php get_footer(); ?>.
  2. Add then add for example the following lines of CSS to your CSS file: .singleheadings h1 {font-size:XXpx;font-family:XX} .singleheadings h2 {font-size:XXpx;font-family:XX} .singleheadings h3 {font-size:XXpx;font-family:XX}

You can change your quicktags by for example using this file instead (also add H2 to the file) so that you easily can insert heading tags when you write.


Most of the link power is coming to the home page of your blog and gets distributed evenly among the rest of the links on that page. So in additional to having a good navigation structure for your visitors also do the following:

Site Map

A Site Map is where your visitors go to navigate and find specific articles and posts on your blog. It is also a place for search engines to find links to all your pages on your blog.

Use my article on how to make an automatic WordPresss Site Map and add one for your blog. I prefer that you make the first version in the guide.

What about a Google Sitemap?

It is not needed. There is no reason for a WordPress blog with a proper navigation structure to submit a Google Sitemap other than for information purposes. A Google Sitemap does not improve your ranking, only crawling, and that is not a problem.


Everyone has different tastes about design but here are points to think about when you design your blog:

References to follow:

What About the Meta Tags?

There are various WP plugins out there for this but to be honest and frank I can tell you that they are not worth the effort. The meta keywords tag are not used anymore (or extremely little) in the ranking calculation and while the meta description tag can show up in the SERPs I consider the snippet of text the visitor gets being better.

CSS Positioning

It has been said that by providing the important content first in the source code it will make a positive difference in your search engine ranking. I am not sure if this is true, but it won't hurt to do it. For example on this blog the navigation on the left is in the bottom of the code.

Section 2: How to Craft Your Articles

You should read the entire section of Authoring High Quality Content by Mr. Fishkin but I give you here a very quick summary as it relates to this article.

First the most important quote:

One Great Page is Worth a Thousand Good Pages

While hundreds or dozens of on-topic pages that cover sections of an industry are valuable to a website's growth, it is actually far better to invest a significant amount of time and energy producing a few articles/resources of truly exceptional quality. To create documents that become "industry standard" on the web and are pointed to time after time as the "source" for further investigations, claims, documents, etc. is to truly succeed in the rankings battle. The value of "owning" this traffic and link source far outweighs a myriad of articles that are rarely read or linked to.

Write articles or posts that serves as a stand alone document. This means there is everything valuable collected on that page on that specific topic. For example a stand alone document on "SEO for WordPress" should have everything on that page and the reader should not need any other articles on that topic.

Better 1 great article that you revise 10 times than 10 smaller ok articles.

To do this you can also rewrite and republish your old articles with the current time to show up again as the latest article.

Include links to more reading if applicable

Withing or at the end of your article you should link to other sources so that the reader can read more if he is interested. You can also use this as sources if you got your writing materials from other places.


You should write the kind of headlines to your articles that:

Section 3: Increase User Interaction

Section 4: Get Links

This article will be regularly updated and the URL will never change. Feel welcome to bookmark and or link to it. Let me know if there is something I should add. Thank you.

Note: This article was originally written on the Nov 29th, 2005 but was completely revised and republished on the Mar 17th, 2007..

20 Mar 2007

About the Author Jim Westergren Jim Westergren is a Swedish web entrepreneur currently living in Spain. He is happily married and has three lovely children. Some of his interests are web development, SEO and writing.
He is the Founder of DomainStats and N.nu. Read his .