Start a Project

Building SEO into Your WordPress Website

  • How to build SEO into your custom WordPress theme
  • How to address each of the SEO elements
  • Strategic approach to WordPress SEO

How awesome it is to work with a developer to customize your own ideas into a WordPress theme you can be proud of. Standing out from the crowd will win the respect of friends and clients. Competitors will be jealous (even though they won’t say so). Ah, and that warm satisfying feeling wells up within you when you gaze upon it. But how do you ensure that your finished product works for search engines too?

Code it, plug it, blog it

In the world of WordPress, there are essentially three points at which you build SEO into your custom WordPress theme: you plug it, code it, and blog it. I’m going to assume some things before getting into how to break down SEO for your custom WordPress theme that you’ve always wanted; namely:

  • You’re working with a professional team like Dizzain to design and code your theme.
  • You want to take an active interest in your new website’s SEO performance.
  • You are familiar with the basics of WordPress.

SEO at the table

Warning: if your company is designing a custom WordPress theme, ensure that SEO is represented at the table, not under the table. In fact, let SEO stand on the table and yell so they will be empowered to weigh in on key search performance decisions. Often company projects give full accountability to the SEO team, but they are not called in until after the other stakeholders have committed to a design and it’s too late to change it.

Of course, a professional design/dev company like Dizzain will ask questions like this before starting.

Make sure the designer has this type of info whether they ask or not:

  • Audience – who are they, how and where on the site personas find you, and what do they do when arriving from the search.
  • Requirements – colors, responsiveness, special widgets, functionality, sitemap, etc.
  • Graphical representation – wireframes, and screenshots that depict what you want.
  • Examples of competitor sites you want to emulate.

Out-the-box clichés

Have you heard that WordPress is “out-of-the-box” SEO-ready? Yes, WordPress has the honor of being SEO-capable in the sense that it can be adapted to your needs. It doesn’t tend to cause SEO people the headaches that other content management systems do. Extraneous URLs and duplicate content are two classic issues that come to mind. But “out-of-the-box” implies you don’t have to formulate a plan for your website’s search performance. The use of that insulting phrase implies you don’t have to use your brain.

Plug it

“But, we plan to install Yoast or the All-In-One SEO plugin.”

If your competitors want to think that they are completely covered for SEO because they installed a plugin, just let them. WordPress themes don’t come with an SEO Strategy. You have to build your strategy into the theme. But that’s where it gets fun!

Yet, you will want to leverage at least one of the all-encompassing SEO plugins to handle title/meta tags and do other tasks like blocking pages from indexing. You will even find yourself depending on the plugin to extend your capabilities beyond WordPress’s default behaviors.

Don’t worry, I’m not going to list a ton of SEO plugin features for you to sort through because competition among plugin developers leaves features in a continuous flux. I prefer to use one of what I call “the big three SEO plugins” that make changing SEO elements possible on an individual post or page. They also set logical defaults for the other page types in WordPress. The big three are:

All In One SEO Pack – The longest-running SEO plugin that has been the gold standard in the industry for years. Biggest complaint? It’s slightly slower than others.

Yoast SEO – A newer but well-liked plugin with more features than you can shake a widget at. Biggest complaint? Feature bloat. Even so, it is faster than AIOSEO.

Greg’s High-Performance SEO – Fast, lean and mean. It lives up to its name, being speedier than Yoast (see our test) and leaving out extra features that can be handled elsewhere (XML sitemap for example). I am pretty excited about this up-and-coming plugin and am just looking for an excuse to replace the previous two with it! Biggest Complaint? It doesn’t have the popular appeal (number of downloads or reviews on that the previous two have.

Tip: Think through the nuances of these big three WordPress plugins and discuss with your team if you have one so you don’t have to port from one plugin to another after launch.

Code it

Enough about plugins. Let’s look at another way to get your SEO strategy into your WordPress theme. Besides “plug it,” you must consider custom-coded solutions like custom loops, functions, custom post types, etc.

For example, one of my sites needed to rank well for niche review-related keywords. In order to do that, I didn’t want to just add keywords into the title and page copy and point keyword anchor text links at it. I wanted to show users and search engines that my reviews were unique and hopefully added more value than other typical review sites.

To accomplish this, I worked with design to come up with a custom format that would allow the user to select either a regular post or a custom review post format with product info and calls to action. Inside a post in the WordPress Admin, this is what the user sees:

WordPress Post Format

The review page format contains several WordPress custom fields allowing the user to input data that visitors care very deeply about and can potentially bring sales. They are:

  • Top Page Text
  • Rating
  • Pros
  • Cons
  • Bottom Line
  • Price
  • URL
  • Disclosure
  • Highlights

I know what you’re thinking. Isn’t there a plugin that does this? Of course, some plugins do custom fields. But this feature is something integral to the site that I wanted to have complete control over, so I opted for a custom solution. I didn’t want to risk breakage or antiquation with the display of my all-important review content.

Other code-related WordPress SEO components that you’ll want to think deeply about are:

What about coding for your offsite WordPress SEO strategy? Have thought about how your blog is presented beyond your site in search and social media results? You can code your custom WordPress theme to stand out from your competitors in Google, Bing, Facebook, and Twitter. Doing this can increase click-through rates to your blog. High click-through rates from users who don’t click back are believed to be valued as a positive signal by search engines.

What am I talking about? Google promotes the idea of coding your site with structured data markup so that they can in turn display rich snippets to users in search results. A rich snippet can highlight data from your site like reviews, recipes, events, people, products, etc. For example, the review stars from my review site were coded to display the rating the reviewer awarded.

Rich Snippet review example

To code your custom WordPress theme to display rich snippets consider using Google’s preferred microdata format at Facebook, Pinterest, and even Google+ in some cases make use of the Open Graph Protocol. Twitter uses a similar convention for Twitter Cards.

Blog it

Let’s imagine that you have the perfect WordPress theme optimized using your special mix of plugins and custom coding solutions. We’re done and ready to launch this baby, right? Hold on! The final leg of your WordPress SEO strategy will be achieved by the blogger writing the posts. You need both John Henry and the machine working for you.

I don’t want to make this a post about content strategy. But unless you make your content a product your readers will look forward to consuming and sharing, it will likely fail. If you can’t write, hire someone who can. You’ve got to find a way to break through and deliver your message to that special group of people who care about your target audience.

Before you make a post, make sure that you:

  • Understand the wants and needs of your audience, what motivates and inspires them, and how to call them to action.
  • Research and tactfully deploy keyword phrases each time you prepare to write an individual post.
  • Know how to format posts for web readers (short paragraphs, subheadings, bullet points, images, interlink key posts, citations, etc.)
  • Learn how to devise post titles that people will click through and read even when they’re late for an appointment.

A few key resources for blogging it with SEO:

Google Webmaster Central Blog’s 23 Questions – most of these address what the result of articles you write should be in the Google mindset.

How to Write Great Blog Content – touches on some of the same ideas, but not from a strictly SEO perspective.

CopyBlogger – SEO-aware blog that preaches excellence in content to bloggers.

How is each particular SEO element addressed in WordPress?

If you’ve never made a serious effort at customizing a WordPress theme, you may wonder just how to address each of the SEO elements. What is done via coding vs. plugin vs. by the blogger? Many times they overlap. To help you decide, I’m listing some key SEO elements below and showing by which of the three means it is normally done.

By CodeBy PluginBy Blogger
Title Tagsxx
Description tagsxx
Canonical tagsx
XML sitemapx
Image alt attributes and file namesx
Bold and italics textx
Keyword selectionx
Internal link anchor textx
External linkingx
Duplicate content insulationxx
Rich snippetsxx
Trust signalsxx

Title Tags

Using one of the aforementioned “big three” plugins, WordPress post titles can be rewritten automatically as title tags with the word ordering more amenable to your SEO goals. For example, putting the post title first followed by the blog brand title gets the more competitive words ordered at the beginning where they should have the most pull with search engines.

The WordPress title that you enter in your post becomes the title tag for individual WordPress posts by default. Sometimes this is good enough. In most cases, the blogger should override the automatic settings as the strategy might require. Consider adding, reordering, and using synonyms in the title tags of individual posts. I talked about optimizing title tags for WordPress in this post.

Description tags

Unlike title tags, descriptions are written in complete sentences and need a call to action. So, you typically don’t want to automate them. Sentences can be cut off and unimportant phrases can get inserted where key calls to action should be. Plugins can generate description meta tags automatically but I recommend that the blogger do them all by hand, especially on key landing pages where you’ll want the message to be clear in the search results to potential visitors.


Headings are often done incorrectly by developers. You’ll want to require that your WordPress theme be coded with one H1 main heading per page type. I like to leave subheadings out of menus and widgets and let the blogger handle them in the content area (H2, H3, etc.).

Canonical tags

In most cases, you’ll want to let the plugin handle canonical URL tags, leaving it the same as your regular URL. There are cases when the blogger may want to manually change the tag on an individual post. A paid search landing page could be one example.


Almost all WordPress bloggers I know gear their URL settings for the so-called Pretty Permalinks syntax. By default, this places each word of your blog post’s title in lowercase separated by dashes. This most precious SEO asset should almost always be augmented by the blogger to make the URL shorter, remove stop words, and emphasize important keywords.


WordPress handles certain redirects by default. For example, if you publish a post, and then change the URL, it will permanently (301) redirect it to the new URL. There is probably going to come a time when you’ll want to 301 redirect an old URL that has a strong history to a new URL. And, it won’t be something you feel comfortable having automated. Some bloggers like using plugins like Redirection to handle redirects. This may be your only choice if you do not have access to your server’s htaccess file. But do you really want your CMS to handle redirects? I prefer redirects to be coded at the server level for optimal stability, speed, and efficiency.

XML Sitemap

XML sitemaps are always handled by plugins. The Yoast plugin includes XML sitemap functionality but I prefer to use the standalone Google XML Sitemaps because of the vast number of options available. I have found it to be quite reliable over the years.

Image alt attributes and file names

Alt attributes for images can sometimes be assigned programmatically in code such as with thumbnails or featured image posts. Ideally, the blogger should do this by hand for each post. If you are featuring image-heavy content like infographics, this is a must.

Bold and italics text

The writer of the WordPress post selects phrases to call out to readers in each post. I like to bold keywords along with other words that make sense. One of my favorite things to do is to try and predict when the reader will start losing attention and insert a bold phrase well into the post to wake him up. Search engines don’t really care if you bold the same text in a widget that appears on every page. Bold and italics markup should be done in the content area of the WordPress post to highlight important words for the reader.

Keyword selection

Of course, the blogger always drives the overall keyword strategy as well as the tactical keyword selection for each post. I never like to automate anything to do with keywords. Oh and don’t worry about using the keywords meta tag in case you didn’t know.

Internal Link anchor text

Remember when you used to see sites with entire menus that looked like they came directly from a keyword tool? I see few these days. Potentially overusing keywords in link anchor text (or better yet, guessing what Google considers as overuse) has become a source of paranoia among SEO practitioners. You’ll want to make your WordPress menu text links logical-sounding and natural to your topic so that they won’t trip any kind of overoptimization (Google Penguin) filters. If your website contains a category about chickens, name it “chickens” and not “buy chickens now!”

The most gains with link anchor text can be achieved from within the content area of the post. I usually deploy a blend of brand and keyword anchor text to effectively communicate what readers can expect on the other side. The blogger, of course, must think this through for each post and make a determination.

External linking

Filling your website with as many links to Wikipedia as you can won’t improve SEO performance. However, it’s always a good thing to use citations and references to credit sources. If I come across a website that DOESN’T give credit to others, I am suspicious of where they got the information. Did they lift it from a hard-working researcher? External linking should always be an editorial decision made by the blogger. Rarely, if ever, should you use a sitewide link to an external site in a menu.

Duplicate content insulation

Did you know that WordPress is capable of creating a great deal of internal duplicate content? Home pages, category pages, archive pages, tag pages, and author pages can all have the same introductory snippet from your post. Sometimes these pages outrank your post in search engines. Not good. Do you really want to send someone to a tag page rather than your post? I suspect in most cases that wouldn’t be the optimal result.

This can be solved in a few ways. Consider refraining from using 2 out of 3 of these: archive, tag, and category pages (I like to use category pages and robots.txt out of archive and tags). You can also code one of the three to be distinct from the home, post, and author pages by using the WordPress Excerpt function. Now, that means that the blogger can add a unique description in the excerpt field of any WordPress post and it will appear on category pages (if your theme is so coded).


Comments are nofollowed by default in WordPress and that’s a good thing! You may not always know who is leaving comments or what their motives are. So, if you don’t trust them, search engines shouldn’t trust them enough to pass link juice to either.

The task of deciding which links to nofollow falls to the blogger making the post. By default, I usually nofollow links unless I feel certain that they point to sites that Google sees as quality sites. Google has recently started cracking down on large-scale guest blogging, so be careful who you are linking out to in your posts.

Rich snippets

We covered the benefits of coding rich snippets into your WordPress theme earlier. I strongly recommend including microdata wherever possible. It will send a stronger, clearer signal to search engines and give them the confidence to display your data in more attractive ways.

Trust signals

Elements on your website that make readers feel a sense of confidence will keep them on your website and keep them coming back. It may be as simple as coding or widgeting-in official seals or buttons that indicate you are certified by a trusted institution (like It could also take the form of social proof badges especially if you have a large number of subscribers to our Google+, Twitter, Facebook, etc. pages.

Taking a strategic approach to WordPress SEO

In summary, when engaging in the plug it, code it, and blog it methodology go beyond the traditional keyword-based SEO and remember that your strategy entails things like:

  • Relating and connecting content.
  • Emphasizing your most valuable content in the linking structure. De-emphasize unimportant content.
  • Deciding the purpose of page types, where they will funnel users, or what action users will take.
  • Optimizing for your audience.

Now, start planning your custom WordPress theme!

You might also like
protect google analytics
How to Protect Google Analytics Data from Being Hacked

We explain what to do if someone else put your tracking code on their website.

accessible website
How to Make a Website Accessible

How to design, code, and present content for everyone on the web including people with disabilities and temporary impairments.

How to Secure Your WordPress Website from Hackers

The more you know and aware of, the more you can prevent so that your website could stay live 24/7.

🍪 We use cookies to improve and customize your experience. To find out more about the cookies, read our Privacy Policy.