The first thing you need to do is open up the theme files.
Making Sure the Theme is Ready for the Big Show
- Check out the template files
- index.php (While this is necessary, most themes nowadays, have nothing in this file, and control the homepage using home.php.)
- single.php
- page.php
- archive.php (this is called when any archive page is called. Archive pages can be fine-grain controlled by creating the specific archive pages: author.php, category.php, and date.php)
- search.php
- 404.php
- While not necessary to make a theme’s functioning, it is likely that themes will also have a header.php, footer.php, and sidebar.php file.
- Check the Hooks
- In the theme’s header.php file, make sure there is contained one of the following snippets of php code: “
wp_head();” or “do_action('wp_head');” If it’s not there, add<?php wp_head(); ?>to the header right before the tag</head> - In the header.php file between the tags
<title>...</title>, remove any content and insert<?php wp_title(''); ?> - In the footer.php file, there should be one of the following snippets of php code: “
wp_footer();” or “do_action('wp_footer');” If it’s not there, add<?php wp_footer(); ?>right before the</body>tag. - In the comments.php and/or the comment-popup.php the php code snippet
do_action('comment_form', $post->ID);should exist right above the</form> - Basic theme checks
- Make sure the theme is widgetized: open up sidebar.php and make sure that
dynamic_sidebar('');appears somewhere in the code. - Make sure that the theme works in Internet Explorer 7+, Firefox, Safari, Chrome, and maybe Opera just for fun.
- Make sure the theme is valid: http://validator.w3.org/. It’s not the biggest deal in the world if it’s not. But to avoid any future problems, it’s good to get it as valid as possible.
- Make sure your page isn’t linking to places that you don’t want it to go. http://tools.davidnaylor.co.uk/keyworddensity/. A lot of SEO firms and other people will purchase links at the bottom of themes. We don’t really want to give them any link juice. So let’s get rid of all those.
- Make sure that the theme can handle pages. Make both pages and some children pages to see what the theme does with them.
- Go to the single.php and the page.php and make sure that the main titles are between
<h1>...</h1>.
Make sure that all the following template files exist for any theme we use.
Checking your theme’s SEO
Backend Changes
- Under Settings → Permalinks select Custom Structure under “Common settings” and type in the text /%postname%/ Unless for some reason, the way people use the site calls for a different navigation system.
- For website categories, go to post → categories and add a good description (no more than about 150 characters).
- Redirection Plugin: Go to Manage → Redirection → Options and make sure that both URL Monitoring select boxes are set to “Modified Posts”.
- SEO Slugs
- Headspace 2. Go to Tools → Settings → Headspace. And add the following settings:
- To all of the following add
%%category_description%%to the description field. - Posts / Pages:
%%title%% | %%sitename%% - Categories:
%%category%% Archives %%page%% | %%sitename%% - Tags:
%%tag%% Archives %%page%% | %%sitename%% - Archives:
Blog Archives %%page%% | %%sitename%% - SEO Friendly Images
- Breadcrumb Navigation XT
- WP-Super-Cache
- Robots Meta Tag Generator:
- Prevent the indexing of all results pages, login and register pages, admin pages, subpages of the homepage, author archives, date-based archives, date-based archives, category archives, tag archives (unless there is a reason not to make these not index i.e. a magazine might not want to not index their author archive pages as people might regularly search for the authors of the magazine).
- Category Pagination Fix
- Look for
<div class="navigation">...</div>and replace it with <div class="navigation"><?php pager_fix(" "," "," ","« Previous page","Next Page »","strong"); ?></div>
Plugins
This document is a modified and condensed version of Joost De Valk’s Wordpress SEO and 10 Checks to the Perfect WordPress Theme


