The Definitive Guide to WordPress SEO
Oh WordPress how I love thee. Let me count the ways… you’re free, you’re code is beautiful, and when all dressed up you are a traffic magnet.
Of the top million websites according to Alexa, 55% are running WordPress! But that’s not all.
- It’s FREE
- Easy to use. So easy in fact a caveman could do it
- Secure… sort of.
- Highly customizable
- Great community!
Plus, the numbers simply do not lie.
But here’s the problem with WordPress. Out of the box its SEO sucks!
Here’s how we are going to Supercharge WordPress.
- Fix the default WordPress settings.
- Optimize WordPress’s operation.
- Correct the on-page SEO.
- Optimize our internal link juice.
- Upgrade the promotion engines.
- Add Social Media (optional).
Step 1: Fixing the default WordPress Settings
Ok so the first thing we are going to do is fix the default WordPress Settings, some pet peeves, and talk a little about security.
- Create a new admin account.
- Log out.
- Log-in under the new admin account.
- DELETE the original account with the username “admin”
If you don’t do this you are asking for your website to be hacked!
SEO Friendly URLs
Search Engines hate long url strings, and reward websites that use the keywords in the url. So we want to set up WordPress to create clean URLs.
Go to Settings >> Permalinks
*Select Custom Structure and put
Note: I recommend you never have two pages with the same title. If you have do have a massive site you can also use the category in the url, but I feel this is redundant and has no SEO value.
To do this you would put
Add a robots.txt file
An often overlooked, but stupidly simple thing to have is a robots.txt file. This simply tells the search engines what parts of your website they are allowed to spider and index. WordPress doesn’t come with a robots.txt file by default, so we need to add one. It’s a simple thing, but it does help our rankings.
Create a text file named robots.txt and put this inside it:
Put it in the root folder of your website.
Like this => http://www.yourdomain.com/robots.txt
Learn more at http://www.robotstxt.org
Step 2: Optimize WordPress’s Operation
I started using WordPress in 2004 when they just released version 1.2.2. It has come a long way, but there are still some tweaks I like to make to improve its basic operations. This will set the stage for proper SEO.
The first plugin is W3 Total Cache which will improve a sites overall performance 10 times. By caching the pages it reduces page load time, increase the visitors time on your website, and causing visitors to view more pages.
Plus, you will see a bandwidth savings of up to 80%. This improves web server performance, and makes it easier to sustain high traffic periods, but most of all easier for the search engines to spider and index your content.
To install this plugin just select the “auto-install” feature. That’s all you need to do, and you’ll be off to the races.
Once you have enabled permalinks you have taken a giant leap forward in creating SEO friendly URLs, but there is one flaw in WordPress that this plugin solves.
Typically when you write a blog post, it take the whole title, and then just adds dashes between the words to create the permalinks. This plugin strips common words like “what”, “you” or “can” out of your post slug to make it more search engine friendly.
Automatically turn this:
This plugin will automatically correct any screw-ups you do with your backlinks, moving, or deleting pages on your site.
Here’s what it does. It redirects all 404 page not found errors permanently (or temporarily) to the homepage, automatically. This ensures all visitors at least land on your homepage, but most of all that all backlinks even if they have typos still will pass some link juice to your websites.
Here’s how to set it up:
Set to 301 and redirect to the blog homepage url.
We already added a robots.txt file now we want to be able to control what the search engines can access on pages they do find. To do this we will use Robots Meta to add appropriate meta robots tags to your pages, disabling unused archives, and adding nofollow to unnecessary links.
We are going to first select the settings to prevent the search engines from using DMOZ or Yahoo Directory data for our sites description. This way we force them to use the description we provide, or they will create one from the content on the page.
How to Hacker Proof your blog.
- Have your webhost enable suExec globally for WHM/cPanel this will prevent other websites on your server from being hacked if one is compromised.
- All folders should be CHMOD’d to 750
- All files should be CHMOD’d to 640
- IMPORTANT! Rename or replace the admin username, and use a good password. Brute force attacks are the most common hack.
- Install Login Lock and set to at least moderate.
- Inside Robots Meta change this setting:
This is one plugin I feel should become part of the WordPress default installation. It provides protection from the most widely used hacker attack, the “brute force” attack. Which basically tries to crack your password by running through every variation possible on the keyboard.
This plug in enforces strong password policies, provides emergency lockdown if compormised, monitors login attempts, and blocks hacker’s IP addresses.
The recommend minimum setting is moderate.
Step 3: Correct WordPress’s on-page SEO.
There are several plugins available that can help us correct WordPress’s on-page SEO, but only one that has most of the features all-in-one. Plus, this is the most widely download, and supported WordPress plugin.
Here are the first settings we want to change:
This is probably one of the most important tweaks we can make. Not only will it make our website look better, it’s going to make our pages rank so much easier. By default WordPress uses the blog name, over and over. We are going to get rid of this functionality with these settings.
For the home page of your blog, you want to take extra care in choosing the title tag, description, and keywords.
Here is a basic formula… to test.
([keyword phrase] – [keyword phrase with a word in between] – [modified phrase with last part of keyword])
Put your main target keyword first, then a modification on that keyword phrase, and finally a phrase that contains a part of the first keyword. This will allow you to pickup some additional rankings for the homepage, and have good keyword prominence.
Tip! Try to word it so it sounds like a headline, use a little copy writing to increase the odds of getting the click.
Some other recommended settings:
Alternatives to All-In-One SEO
One of the most overlooked, but powerful on-page SEO tweaks you can make, is to begin to religiously use the ALT and TITLE tag for your images. Here is a plugin that will automatically update all the images on your blog to be SEO friendly.
Here’s how it works. If your images do not have ALT and TITLE already set, SEO Friendly Images will add them according the options you set. Plus, it even makes the post W3C/xHTML valid as well.
Step 4: Optimize our internal link juice.
This is the step where we can really have some significant impact on the rankings of our website. By funneling link juice within our website more effectively, we can give our interior pages the ranking juice needed to get on page one of the search engines.
The first plugin I recommend you download is called Internal Link Building, and all I can say is that it’s brilliant! It allows you to really maximize the internal contextual anchor text links, which are incredibly powerful. Also there are some great features to give great anchor text variety.
Download here: http://seoroi.com/downloads/internal-link-building
Here is how to use it:
- Go to Settings > Keywords
- Add keywords you want linked within your blog, and the url to link to.
- Assign keywords to specific pages within your site.
- Select a word or two before and after the keyword to provide natural looking anchor text variety.
- Set a limit of the amount of times the links should appear on a page to 2.
Now for when we are feeling lazy I recommend we install SEO Smart Links. This will automatically links keywords and phrases in your posts and comments with corresponding posts, pages, categories and tags on your blog.
Everything happens completely transparent, and you can edit the options from the settings page.
Another great plugin to add is Yet Another Related Posts Plugin (YARPP) which uses an algorithm you configure to determine relevant blog posts from your site to display at the end of a post. This leads to visitors reading more of your content, and more internal links. There is also a new service called Blog Glue that integrates with YARPP, that allows you to show related posts from other blogs, and have your posts shown on their blog.
In order to tidy up any loose ends we may have with our internal links, or pages in general we need to install Redirection. This is an essential plugin to have available to manage 301 redirections, keep track of 404 errors, and to funnel the link juice even if we remove a page or post.
One of my favorite plugins is Quick Redirects, this allows you to quickly create redirects on your site to other urls. Great for affiliate links!
Step 5: Upgrade the promotion engines.
One of the great benefits to using WordPress over other open-source CSM systems, or static sites, is the built in promotional engines. Did you know that every time that you write a blog post WordPress sends a notification to several websites around the web? We are going to optimize these features.
Another critical plugin to install is Ping Optimizer. Did you know that every time you edit a post WordPress pings? Think how many times you click on “Save and Continue Editing” or “Save” button. This effectively labels you as a ping spammer, just from editing your typos.
The MOST effective ping list!
Settings > Writing Settings > Update Services
A sitemap is a no-brainer way to get more of your pages indexed, and get more link juice flowing deep within your website. My favorite sitemap plugin is Sitemap Generator. You can see an example of this plugin here. This plugin creates a sitemap meant for actual humans to be able to navigate within your site easier. It’s highly customizable, and looks sharp.
Now that we have taken care of our human visitors, we want a search engine formatted site map. This plugin generates the fancy XML sitemaps Google, Bing, Yahoo, and Ask love. This will make it easier for them to crawl your website, and see the complete structure of the site. Plus, this plugin will help notify the engines when there is new content.
Tip: Once you create the XML sitemap, add the link to it in the Sitemap Generator plugins settings.
How to ping sitemaps.
To ensure our sitemaps get crawled by Bing, Ask, and Yahoo we can also manually ping them. Add your XML sitemap urls to these different urls and then visit them in your browser to ping them. You will need a Yahoo API ID for the last one. I recommend doing this monthly.
http://search.yahooapis.com/SiteExplorerService/V1/updateNotification?appid=[YOUR YAHOO API ID]&url=[http://domain.tld/sitemap.xml]
Getting a Yahoo API ID
- Register or sign in to Yahoo here.
- Select “Generic” as the “authentication method”
- Fill out the fields:
Description of Application
- Click “Continue”
- Make a note of your long API ID
Step 6: Add Social Media (optional).
I put this step as optional, but really it’s silly not to have a way for people to spread the word about your content. Here are two great plugins to add social media buttons to WordPress.
This is used on over 1 million websites. It allows you to share to 50 plus social networks including Facebook, Twitter, Digg, StumbleUpon and Google Buzz.
My personal favorite, and plugin I use on Cliconomics. It allows you to promote your content to 295 of the most popular social networks. It also has a button that is small, unobtrusive, quick to load, and recognized all over the web.
But what I really love is the AddThis.com account that gives great insight into how your content is being shared. Plus, they have this great dynamic button that basically detects what sites your visitor uses the most and displays it to them.
Four FREE Killer SEO Themes
Leave a comment and spread the word. Cheers!