SEO For WordPress Blogs

Date October 24, 2007

Stumble it!

Everyone knows how important is SEO. If you succeed with SEO in your blog you will get a lot of free traffic from search engines. This article will discuss on how you can SEO your wordpress blogs, many people know that the main problem of wordpress is the “duplicate content” that it can cause. So here is a few code tricks to prevent this issue and improve even more.

Duplicate Content

WordPress is notorious when it comes to make duplicate content. The archives, categories, and even the front page can cause duplicate content issues which is bad for SEO.

Insert the following between the < . header .> (remove the dot’s) tags

seo blog wordpress

Now, only the page, home, and single page will be indexed, everything else will be set to noindex.

When you’re writing posts, make use of the < . !–more– .> (Remove the dot’s) tag in the wordpress Write Post screen. You want to use this so you don’t have your entire post indexed twice (once in the front and once in post view). In the WYSISYG editor, you can just click on this icon:

seo wordpress blog

Make a text file named robots.txt with:


User-agent: Googlebot
Disallow: /*/feed/$
Disallow: /*/feed/rss/$
Disallow: /*/trackback/$
User-agent: *
Disallow: /wp-
Disallow: /feed/
Disallow: /trackback/
Disallow: /rss/
Disallow: /comments/feed/
Disallow: /page/
Disallow: /date/
Disallow: /comments/

Put this in your root directory.

If you changed the directory names, make sure the above robots.txt and won’t screw up your site, but 99% of the time you won’t need to change anything.

Permalink Structure

Go to the WordPress admin and goto the options menu, in the submenu goto Permalinks.

For custom structure, use:

wordpress blog seo

.htaccess

Default Htaccess

wordpress

In your .htaccess file add the following 2 lines at the end.

wordpress themes

Change DOMAIN to your domain name.

So it looks like:

wordpress theme

Make sure: “RewriteEngine On” is also in the htaccess (default for WordPress Htaccess).

Now on, all your domains will redirect to www.yourdomain.com if you use type blogtitle.com. This is to stop canonicalization. This is usefull because when a ranking system (Like pagerank) will rank your site once not a rank to ‘www’ version and without the ‘www’.

Note, this only works for Apache servers. If you are running on a Windows server, you can grab this component to do the same thing: ISAPI_Rewrite.

Related Posts WordPress Plugin:

Adding related posts in each of your articles will increase give some pagerank juice to your other blog articles and pageraviews in your blog. The main authors of the related posts in Googlelady is not available it seems that is discountinued but I have uploaded it in Related Posts Plugin.

How to Install

Upload the plugin into your plugin folder, go to “plugins” and activate it. Then go to Single.php and add the following code:

wordpress

Meta Keywords and Meta Descriptions:

All In SEO Plugin can do this job for you. I use this plugin mainly to add the meta description and sometimes the meta keywords. I prefer that Google bot takes the keywords of the article automatically. But I prefer sometimes to show an original description for my articles. There is also an option to use different titles to your blog articles but I prefer to use the titles that I use in my articles.

Page Titles

I always prefer to not install plugins and this is why I dont use all in seo plugin for my title because this little hack It can do manually optimize your blog titles. There are many other plugins also that optimize your titles for your blogs, but let’s make it less risky and let’s do install this piece of code.

Go into header.php and replace the < . title .> whatever is in the title tag < . /title .> (remove the dot’s) with:

wordpress seo

What this does is for the home page, it uses the blog’s title for the Title tag and for everything else, it will use the title of the blog post or page for the Title tag.

If you really want your blog name in all your posts, use this (I prefer not to use this option):

wordpress seo

To prevent Google or any other spider to think that you are spamming your main keyword (which is your blog title name) use the option 1.

Blog title header

Also in header.php, but could also be in index.php (if it’s in index.php, you will need to change home.php)

Look for the h1 tag, it’s usually between < . div id=”header” .> < . /div .> (remove the dot’s).

Replace the < . h1 .>whatever is in the h1 tag < . /h1 .> (remove the dot’s) with:

seo blog wordpress

When it’s on single, page, or archive, it will use < . div id=”page_header” .>. Any other time such as the front page, it will use the default h1 tag. You ALWAYS use only one h1 tag and put your most important keywords at the start of the < . h1 .>, but don’t do this religiously though or google will think you’re spamming. Make sure there isn’t any higher numbered headers before the h1 tag.

Selling or Adding Links
This is what Google Suggests when you are adding those links in your sidebars:

Most people use words like, SPONSORS, PARTNERS, FEATURED, ADVERTISERS, ADS and other synonymous terms related to advertisers. Our suggestion is to use ‘different’ titles for these ads. Something like RELATED SITES, COOL SITES, RESOURCES, ALTERNATIVE LINKS and so on.

If you have a trick let me know also if you like this post, let your blog readers know about it.

Hosting of the Month


FatCow Web Hosting. Free Trial , Free Setup, Free Support – All risk free!

What's Next?




 Subscribe To GoogleLady

 Digg It

 Save This Page

 Sphinn It

 Stumble it!

 Favorite This Post

 

16 Responses to “SEO For WordPress Blogs”

  1. Spencer said:

    Does adding the “more” tag prevent delivering a full feed RSS? Doesn’t that make the posts cut off in the reader?

  2. GoogleLady said:

    Spencer, yes the More tag will cut off the reader, but there is a plugin that will prevent this issue. (can’t remember where it is) But you can search on google for “Full readers wordpress plugin”

  3. SEO Blog said:

    Yay, blocking robots to index categories will decrease also the number of the indexed pages in that search engine which you are blocking indexing. What do you say about making an excerpt of the content in the categories, archives or secondary pages? That way you still give more value to post page and home page, and also keep the number of indexed pages higher (which will result in more pages with internal linking that will give some link love to the post page).

  4. GoogleLady said:

    That is something similar in the section under “Duplicate content”. It will index only the single article in the homepage, it will not index the category, archive, page 2-3-4-5… because it can make “duplicate content” in the eyes of Google bot or any other search engine spider.

  5. Mike Mannigan said:

    This is the plugin you’re talking about: CompleteRSS.

    It makes your feeds fulltext with or without a more tag.

  6. GoogleLady said:

    Thanks Mike, that’s right that is the plugin!

  7. rapidshare said:

    aslo for good linking for every ost i use “tag clouds” with Ultimate Tag Warrior plugin. google indexed my pages very fast with it

    regards

  8. rapidshare said:

    Related Posts Plugin didn’t work as itself. you need to execute mysql query first

    $ins=”ALTER TABLE `YourTABLE_posts` ADD FULLTEXT `post_related` (
    `post_name` ,
    `post_content`
    ) “;
    mysql_query($ins) or die (mysql_error());

    this will add column to your table and plugin begin works

  9. GoogleLady said:

    With which wordpress version this would not work? Because tested with the last one and it works.

  10. My 2 Cents 10/26/07 | Blogging with Cents said:

    [...] is super important and if you need some tips on how to improve it, the Googlelady herself has wrote a good post on how to do this.  She is good, she is [...]

  11. andi said:

    I’ve got an error with related posts and here is the error :
    [Can't find FULLTEXT index matching the column list]
    what should i do ?

  12. GoogleLady said:

    Andi, it seems that this related post plugin doesn’t support the latest version of wordpress. Rapidshare (at the top of the comment list) gave you a tip on how to fix it.

    “Related Posts Plugin didn’t work as itself. you need to execute mysql query first

    $ins=”ALTER TABLE `YourTABLE_posts` ADD FULLTEXT `post_related` (
    `post_name` ,
    `post_content`
    ) “;
    mysql_query($ins) or die (mysql_error());

    this will add column to your table and plugin begin works”

  13. Fred said:

    I tried the www redirect in .htaccess but then my site becomes unaccessible. I quadruple checked the syntax. I am running WordPress 2.3.3

  14. GoogleLady said:

    Fred your .htaccess is under the root? Can you post here or email me with the htaccess code?

  15. Aaron said:

    Your case study is awesome, thank you so much for all of the info!

    I am trying it out myself but I’m a bit of a noob with WordPress/blogging…

    Under your heading ‘Duplicate Content’ you have some code to insert between the header tags, can you please tell me which file(s) this code should be added to?

    Thanks again, you rock!

  16. Aaron said:

    one more thing, sorry :)

    when you refer to the root directory are talking about my domain root (public_html on my web host) or the root of the wordpress which looks like it may be public_html/wp_content (or maybe even public_html/wp_content//…)??

    Thanks again,
    the noob

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>