Type to search


Beginner’s Guide to Optimizing Your WordPress Site for Top Search Rankings


[siteorigin_widget class=”WP_Widget_Custom_HTML”][/siteorigin_widget]
[siteorigin_widget class=”WP_Widget_Custom_HTML”][/siteorigin_widget]
[siteorigin_widget class=”WP_Widget_Custom_HTML”][/siteorigin_widget]

We ♥ WordPress.

It’s blogging software that’s simple, easy to use, incredibly powerful, has a large support community, is compatible with a huge number of open source templates that will easily give you a great looking blog…and it’s FREE!

Out of the box WordPress does a good job, but it’s vital that you take things to the next level and apply the necessary SEO to your content and posts in order to get the most out of your content.

Making WordPress search-friendly does require a bit of tweaking, but the good news is that most of it is simple to do. And once you’ve got WordPress set up the right way you’ve got a lean, mean, search engine-friendly blogging machine that’s ready to take on the big dogs.

In this article we’ll show you how to get a highly optimized blog with just a few hours of set-up time. Of course, then it’s up to you to add the killer content that’ll blaze your way to the top of the rankings.

WordPress Installation Basics

First, always download—and be sure to upgrade to—the latest version of WordPress on a regular basis. This is critical for security reasons. You can get the latest version at: http://wordpress.org/download/

As for installation, many web hosts have a one-click push button installation for WordPress that allows you to automatically install WordPress right from your control panel.

If your host doesn’t have this feature, you’ll need to download and install WordPress yourself. It’s fairly easy to do, but if you want some help getting it up and running, let us know and we’ll give you a quote.

That’s pretty much all you need to know to set up the default install. Now let’s work on making it SEO friendly.

Setting Up Permalinks and URLs

A permalink is a term used to refer to your blog URLs—the permanent link is where someone can find your post. By default, WordPress sets up your permalinks to look like this:


Not terrible, but it also doesn’t tell search engines or users anything about what the page contains. You can achieve an added level of optimization and increase the number of people who click on your link in the Search Engine Results if you take advantage of WordPress’s pretty permalinksfeature.

The most common pretty permalink configuration uses just the post title separated by hyphens:


You can also use the hyphen-separated title along with the post category:


…or the post title along with date information:


We typically avoid the date-based option listed above because it buries the post several directory levels deep. While this won’t totally kill your rankings, keeping your directory structure flat is a good idea if you can help it. That means minimizing the number of forward slashes in your URL.

The date-based option also has the obvious problem of making your content seem dated. If a user can tell by viewing your URL in the search results that your post is a few years old, they will be less likely to click on it—no matter how great the content is. Dates in URLs also tend to severelycompromise your chances of getting your blog syndicated by Google News, potentially cutting off that VERY significant source of traffic and links. Our advice — ditch the dates. Short, simple, and keyword-rich URLs that target the primary topic of the page almost always the best choice for ranking and click through rates.

As for the other two options, we typically go with just the post title separated by hyphens, as it provides us with an eye-catching and keyword-rich URL that’s high in your site’s directory tree. The second category-based option we mentioned is fine too, but doesn’t offer any significant additional advantages and pushes everything down a directory level, so we avoid it.

To configure your Permalinks to show hyphenated post titles, first log into your WordPress admin interface. Typically that’s located at:




…depending on if your blog is located in your root directory or in a subdirectory on your site.

Changing your Permalinks Settings

wordpress 1

The first page you’ll see when you log in is your WordPress Dashboard, look to the left rail and find the Settings > Permalinks Menu Option.

In the box labeled Custom Structure, paste /%postname%/.

wordpress 2

Click the Save Changes button and you’re all set.

wordpress 3

These WordPress help files have more detailed information on using pretty permalinks:

The Post Slug

When you create a new WordPress Post or Page, WordPress will create the URL based on the title you used, that “file name” is called a Post Slug.

The post slug refers to the modified version of your post title that’s used as the page URL. So if you write a blog post titled “We’ll Be Launching Our New WordPress Blog Soon”, WordPress will strip out incompatible punctuation and display what it’s going to use for your URL, like this.

wordpress launch

Notice WordPress can’t display the entire URL because of the length, but for reference here’s what it would actually be creating in this example.


You might want to change that to something shorter and a bit more keyword focused. Using the post slug feature you can edit that URL down to just:


There are several ways to do this, the easiest, and the correct time to modify the post slug is before you publish. If you wait to modify the post slug later, that’s equivalent to changing the URL for your post and might result in a 404 error when someone tries to visit the previous URL.

Right below the Title of your post, click the edit button.

wordpress launch 2

Then just modify the post slug with a shorter version or another more optimized URL.

wordpress launch 3

Depending on the titles you typically write and the number of extraneous keywords you use, the post slug can be a great way to clean up and optimize your blog URLs.

Edit Published Post Slugs With Caution

You can also go back and edit a published article and change the post slug, but be aware when you do this you are also changing the file name for the article correspondingly breaking any external links going to the old URL. So change published post slugs with caution. If you must change them you can use a 301 redirect to send requests to the new URL. For information on how to do that, see our article How to use a 301 redirect to Keep Your Web Pages from Dropping Off the Face of the Earth.

Optimizing Post Titles

The default title (the text that goes between your HTML <title> tags) that WordPress uses for your blog posts are poorly optimized. They’re built using the name of your blog followed by the title of the blog post. So if the name of your blog is Search Engine News and you’ve got a post titled The Ultimate Guide to Optimizing Your WordPress Blog, then your page’s title will be:

Search Engine News - The Ultimate Guide to Optimizing Your WordPress Blog

Clearly not an optimized title tag. This is what users are going to see when your page is listed in the search results, and it’s also the first place search engines are going to go to determine what keywords to rank your pages for. Certainly having your blog name first on every page is wasting some serious keyword real estate. A much more optimized title tag would look like:

Optimizing Your WordPress Blog

In our opinion having your blog name in your title tags at all is a waste. After all, you’re not trying to rank every page on your site for your blog name. But if you really want your blog name to show up in the search results for branding purposes, at least place it last within your title so you can give other keywords precedence:

Optimizing Your WordPress Blog | Search Engine News

Sometimes the author of the theme you’re using will have already fixed this problem, but if not there is an easy fix. We recommend using the Yoast SEO Plugin which allows you to easily change the title to whatever you want, and you can preview what it’s going to look like in search results as well.

After installing the Yoast SEO Plugin, you should see an option like this below your content editor.

wordpress 6

Just type in what you want and click the Generate SEO title button, and the title will be updated. This Plugin makes it quick and easy to optimize your post titles, without any editing of your template code.

There’s another WordPress plugin that also allows you to separate your post title from your title tag. It’s called the All in One SEO Pack WordPress plugin, and it allows you to customize just about any title tag (among a host of other SEO related ideas) on your site. It’s enormously valuable for optimizing your page titles while keeping your post titles readable—and we recommend it highly.

Now we recommend the Yoast SEO Plugin over the All in One SEO Pack WordPress plugin, though either of these two plugins will be a very welcome improvement to your WordPress CMS. Yoast has just maintained a better set of functionality as the Search Engines have changes their rules.

Subpages of Archives, Tags, Categories, and Author/Date Archives all need to be marked as noindex and follow per Google and both of the above plugins can help with this, so make sure you mark the appropriate sections in each. It used to be enough to simply do so for the Archives section, that is no longer the case. Good thing Yoast and All in One SEO make this easy.

Minimizing Duplicate Content

Perhaps the biggest SEO problem with WordPress blogs is that, whenever you create a blog post, WordPress automatically stores that post in several different locations on your site. This can lead to some serious duplicate content headaches.

Stick with us here…

This section on duplicate content can be a little technical, so if you feel you don’t need the details then just skip to the section end and paste the code provided into your header.php file near your other meta tags. And you’re done 😉

For example, a blog post is typically stored on the blog’s front page for a week or so, while that same post also has its own dedicated page. After a while the post drops off the blog’s front page as it’s replaced with fresher content, but a copy of the front page containing the post can hang around in the search engine’s cache for a long time. This means you’ve got the same content in two locations, at least as far as the search engines are concerned.

What’s more, the post is often stored in the blog’s category, tag, author and monthly archives as well. This means you have identical content in at least four places (the blog’s front page, the blog post itself, the category archive, and the monthly archive). Clearly, duplicate content can ensue and make it difficult for your pages to stay indexed.

Fortunately, WordPress can be configured to publish just a short snippet of the post on the homepage which, in turn, links to the complete blog post’s permanent location (the permalink). This will help fix the problem of duplicating content on the blog homepage and all the other possible post locations.

One way to do this is to take advantage of WordPress’s More… feature. First, write the first paragraph or so of your post. This is what will appear in the snippet. Once you’re there, follow these instructions from the WordPress docs:

“The quicktags are the little buttons found above the editing window in your Administration > Write > Post SubPanel. They include bold, italic, links, and others, and the famous more. Put your cursor where you want to end the excerpted content of your post and click the more quicktag button.”

wordpress 7

This will insert the <!–more–> tag into your post. Then continue writing your post as normal. Everything after the more tag will show up in the complete post, but not on your homepage or in your archived snippets. A link that says more… will be added to the end of each snippet, which people can click to read the entire post.

wordpress 9

The more tag allows you to specify exactly what will appear in your snippets.

If you don’t want to bother with inserting a tag into your posts you can also simply specify that WordPress create the snippets automatically by going to: Settings -> Reading

Then click on the Summary radio button and then click Save Changes.

wordpress 10

It doesn’t give you quite the same level of control, but it’s less work and has the same effect. The WordPress docs have more on customizing the more tag.

Some WordPress templates have these features built in, so review your template’s options and configuration as it may already be setup this way.

Note that both approaches above will cut off posts in RSS feeds, so if your users insist on having full feeds (where the entire blog post is readable from a user’s feed reader) then you may want to avoid using snippets and go with blocking your archives from crawlers instead.

In this approach, to solve the problem of search engines finding the same post listed under multiple category or date archives, you just block those archives from being indexed. You can put noindex, follow meta tags at the top of your category and monthly archives.

This tells search engines to avoid indexing what would otherwise be seen as duplicate content caused by your archives. Include the follow directive so search engines still crawl the links on the page (although they typically do this anyway, so follow is not strictly necessary, but just be on the safe side).

The code looks like the following:

<meta name="robots" content="noindex, follow">

Of course, an alternative solution is choosing not to publish these particular archives at all or block them with Robots.txt. However, if you never publish archives or prevent them from being spidered, you run into one serious problem: Search engines have a hard time crawling your site because you’re no longer linking to many of your past posts.

The best way to solve this is by using the meta noindex tag on sections you don’t want indexed.

We never saw much point in publishing date archives, since it’s rare that readers want to see what we published on a specific date, so we typically choose to organize our site into categories, then link to our past posts from their category archive. The other advantage of category archives is that they can rank themselves, as long as they have good keyword-rich URLs and titles.

To set up WordPress so that the only indexable pages of archives are the 1st page and not the paginated pages, enable the Titles & Metas > Sitewide Meta Settings > Noindex subpages of archivessetting in the Yoast SEO Plugin. The Yoast plugin also has options to add the meta noindex tag to other archives such as /tag/ and /author/ to prevent those from getting indexed as well.

XML Sitemaps

We highly advise the use of XML sitemaps on your WordPress blog in all situations. The only real question is what to include in those sitemaps. Plugins such as the Yoast SEO have the ability to autogenerate sitemaps for each section of the site, such as posts, pages and media. You can exclude taxonomies such as /tags/ as well with this plugin. Make sure your sitemap settings match what you’re doing with the meta noindex tag, that is don’t publish a sitemap for sections that are generating a meta noindex tag in the header.

You can use other plugins, or manually create a XML sitemap as well if you wish, however the Yoast Plugin works quite well for this purpose we seldom need to use anything else.

WordPress and Robots.txt

You might ask why not use Robots.txt to block the indexing of these files instead of using meta noindex? Well you can indeed use robots.txt to block the spiders from crawling sections of your site, BUT, you need to be careful of this practice.

Here’s an example – Let’s say you have your /tag/ directory blocked in Robots.txt. Google will still see links to those tag URLs, but it can’t crawl them and it can’t pass page rank through to your site either. You’ll end up with lots of listings in the search engine saying “A description for this result is not available because of this sites robots.txt – learn more”. It’s far better to use the meta noindex tag to keep those URLs out of the index than robots.txt.

Not only that, but once Google has indexed a URL and you add a robots.txt block from spidering that URL afterwards, that page can’t be removed from the index by the crawler even if you add a noindex tag to it on a later date. The URLs can be manually removed via Google Webmaster Tools, but that’s really a tough way to do that, and not the best practice on a new WordPress site. We’ve even heard of some situations of sites that incurred a Panda penalty due to overzealous use of the robots.txt tag due to blocking URLs that had already been indexed. Google can take the practice of blocking publically accessible URLs the wrong way, especially AFTER those pages are already in the index.

Here is the simple robots.txt settings we recommend to use for most WordPress sites, it’s very simple.

User-agent: *
    Disallow: /wp-admin/

Note: Be careful with the /wp-content/plugins, there may be some plugins that have content that needs to be crawlable on a case by case basis. Just be aware that some plugin authors also like to put a link back to their site in their /pluginname root and other files which isn’t something you probably want indexed, so pay attention. We specifically allow the /uploads directory as that’s where your images are typically stored at.

Of course, if you put your blog in a blog subdirectory, then you’ll need to bump that all down a level, so use this instead:

User-agent: *
    Disallow: /blog/wp-admin/

We generally like to put blogs in a subdirectory of the main site. That way, if you decide later that you don’t want your blog to be the main focus of your site, you don’t have to modify your entire site to change things.

Facebook Authorship

This is easily handled via the Yoast plugin, this is a plugin we have listed in the ‘Essential WordPress Plugins’ and there is good reason. It handles so many facets of managing your SEO with regards to WordPress that it’s a tool which is hard to go without. In this particular case once you have entered your Facebook Profile URL into the Yoast plugin and enabled Open Graph tags, the rest kinda happens automatically and I’m sure you want to save time and let the computer do the tedious stuff. Make sure you test your authorship out using the Facebook Debugger.

We’ve also got a great resource to get you started with this here.

Update Services

WordPress has the ability to Ping services using an XML-RPC based push service which is built in. Pinging when you update content is a good idea as it can help get your content indexed faster, which can be very helpful if your blog focuses on News and other trending information. WordPress by default will Ping the chosen services whenever you publish, or edit a page or post on your site.

In your WordPress Desktop, go to the Settings > Writing > Update Services and you’ll see what services are already setup. We recommend using these as the minimum (change the highlighted URL with your site’s domain name).


In addition to faster indexing by the engines, this can also give you a leg up on scraper bots letting the engines know who the first to publish the content was and where it originated from.

Use the Featured Image Option for Social Benefits

featured image

Many Themes are designed around the use of the Featured Image option found in the page/post editor on the lower right side of the editor. Featured Images are intended to help “represent the contents, mood or theme of the page” according to WordPress.

When you set a featured image, this allows other features of your Theme to function correctly, not to mention plugins like Facebook’s Open Graph Feature to use that image as the one shown when someone likes or shares your URL on Facebook. Many themes also use that designated image to provide thumbnail previews for other features such as a post excerpt.

WordPress Themes

Themes are pre-designed templates for your blog that are free to use and extremely easy to install. In most cases, all you have to do is upload the theme to your /wp-content/themes/ directory, then log into your Dashboard, go to Appearance, then Themes, then click on the theme you just uploaded and it installs automatically.

There’s a huge number of high-quality, professional looking themes available for free and for low prices that you can use on your WordPress blog. WordPress has their own ThemeViewer that lets you easily browse themes. You may also want to check out sites like Themeforest.net for ideas.

We highly recommend using a Responsive theme if possible, that will help your site be easily viewable on the desktop, tablets and smartphones – those are devices you certainly don’t want to overlook. We also recommend that you test your new theme on a variety of devices to make certain everything works as intended.

Not all themes are created equal, some are much faster than others and better designed. Load Time should certainly be considered as a major factor in your choice of themes, especially as Google is reporting it is a ranking factor for mobile search. See our 2014 WordPress Shootout for how we tested a handful of responsive themes and what we learned during the test.

ThemesPress.com will also create a theme for you that’s customized to the look of your existing site. At only $10, it’s a great deal and a huge time saver if you’re adding a blog to an existing web site.

WordPress Plugins

Plugins are modifications to the default WordPress software that add additional functionality. Adding the right plugins is one of the most important things you can do to create a highly optimized and search-friendly blog.

Don’t go overboard on plugins! In general each plugin you add to your site can slow the site down, increase the potential for security breaches and add compatibility problems. Not to mention each plugin needs to be maintained – they often are updated weekly requiring you to download and install the most recent updates. This can be a pain in the butt if you have lots of plugins installed.

Most plugins come with their own installation guide which you should read. However, in most cases installing your plugin is as simple as uploading it to your wp-content/plugins directory, then going to the Plugins tab on your Dashboard, finding the plugin you just uploaded and clicking Activate.

We also want to note to make sure if you decide to deactivate a plug in permanently, that you also uninstall the plugin as well to avoid security issues with out of date files left on the server.

Essential WordPress Plugins

  • Yoast SEO Plugin — We discussed this one earlier. It’s free (donations accepted) and offers a core set of features needed for WordPress SEO such as the ability to customize Post Titles and Meta Descriptions, Canonical Tags, Breadcrumbs, XML Sitemaps, RSS Feed optimization, noindex tag options, Open Graph support and more. This one is our current favorite general SEO plugin.
  • Better Analytics — This has some additional features for Google Analytics that Yoast’s Google Analytics Plugin doesn’t have, including reporting and adjusted bounce rate. Don’t use both plugins, use either this one or the Google Analytics plugin from Yoast listed below.
  • Yoast Google Analytics for WordPress — Add Google’s analytics code to your Blog without modifying your theme. This plugin makes it real easy to get your stats up and running fast, and it has a number of enhanced options such as Custom Variable Support.
  • Yoast Video SEO for WordPress — Use this $89 Plugin to get Video Rich Snippet Thumbnails in Google search results to help increase your clickthrough rates. Well worth the cost as compared to modifying your php files manually.
  • WP Super Cache — As great as WordPress is, it’s fairly inefficient when it comes to using server resources. Every time a page is displayed it can involve multiple database calls. Usually not a problem, but if you’re fortunate enough to find yourself on the front page of Digg one day, that onslaught of traffic can easily bring your server to its knees and knock your site offline.

    The Super Cache plugin is designed to cache your pages so that users get served a static HTML version of the page rather than WordPress building the page from that database for every pageview. This results in a blog that’s faster, more responsive, and can handle much higher traffic volumes. A faster loading site is also a good brownie point for Google, it might help you rank better.

  • XML Sitemaps Generator — Generates an XML Sitemap for your WordPress blog. Note – the Yoast SEO Plugin has this feature built in, you don’t need to use both.
  • All in One Schema.org Rich Snippets — Makes generating Schema.org markup that we highly recommend in our Real World Rich Snippet Guide a snap!
  • WP Related Posts — This plugin automatically adds related posts base on tags. It helps increase page views and drives engagement, plus it offers built in statistics to monitor your traffic.
  • UpdraftPlus Backup — Easily create WordPress backups. Don’t depend on your web host to do this for you. It can seriously suck to accidentally delete months or years of blog posts, so make sure you have backups.
  • Backup Buddy — This is another option for a backup solution, a lot of people like this one. Pick this one or the EZ Backup, no need for both.

And a couple more WordPress Plugins that are highly useful

  • WP-Spamshield — A very impressive spam blocking plugin that claims to block 100% of automated spam. We also recommend activating Akismet as well with this plugin.
  • Social Warfare — Our top plugin we like for adding social sharing features adds links to many of the top social media sites (like Twitter, Pinterest, Digg, Delicious, etc…). It does all this and allows you to keep your social shares on a site move/redesign. This is the most page-speed-friendly of all the social plugs and but it could still slow you down a little, there are some options available you should review to avoid that problem.
  • Dofollow Case by Case — Automatically allow dofollow comments on a case-by-case basis based on how many characters commentors use in their posts.

Note: One of the easiest and best ways to find a useful WP Plugin is to use the plugin search function. Let’s say that you’re interested in an analytics plugin for WordPress. Simply go to plugins > add new and then search. You can see all of the related plugins by that function along with their descriptions and ratings. Note – be cautious about plugins that have low numbers of installations and/or low ratings, and especially of those that aren’t in the WordPress.org Plugin System. There are some malicious plugins out there that bad guys use to hack your site. If in doubt, do some research before installing in your blog.

wordpress 15

Keep Up To Date

One thing that we strongly suggest is that you maintain your blog by keeping your plugins and your main WordPress system up to date with the latest code releases. WordPress and Plugin writers not only fix bugs, but they also patch security holes in their code frequently, so it’s essential that you keep your system up to date. WordPress will give you notifications on the Dashboard when you need to update something, don’t put these off as they could prevent someone from breaking into your server and altering your pages. If this happens, it can cause a lot of problems with search engines like Google.

Worth All The Effort…

Successful blogging opens up a whole world of link building possibilities that are otherwise unavailable. It also provides an open line of communication directly with your customers. These are the reasons why so many companies have found the common blog to be such an essential part of their successful online story.

Of course, it requires a commitment that should not be taken lightly if you expect to see real results. But once you’ve decided to take the plunge, we highly recommend WordPress as the blogging system of choice—especially now that you know precisely how to tailor it to be your customized top search rankings machine!

Where to go next?

Once you have everything setup, you may feel a bit lost. We have more great articles ready for you to keep you focused and efficient with your new blog…