Utilizing WordPress Themes for Exponential Link Growth

by Casey Kluver

This is a guest post by Casey Kluver from Falling Up Media.

As of Jan 29, 2012 there have been 43,277,689 downloads of 1,468 different WordPress themes.

This is just from the WordPress.org repository. Think about that, almost every free WordPress theme has a link back to the creator – that’s millions of backlinks generated by distributing WordPress themes.

I know what you’re thinking, “I do SEO, not design or development!” Guess what? You’re in luck. That’s where I come in.

I’m going to show you my design and development process to create WordPress themes from scratch, including links to helpful sources and tutorials. Building a WordPress theme is no doubt time consuming, but trust me, once the ground work is done, the rewards can be astonishing.

Note: you can outsource the design and/or development processes I run through below.

Building The WordPress Theme

The process of utilizing WordPress themes for link building can be broken down into three phases: Design, Development, & Distribution. Here are a few helpful steps to get you started off in the right direction.

Create a Goal

Before you get started, you need to have a goal and a target audience. Your goal is to obviously get backlinks, but who do you want linking back to you? Relevant sites with relevant content obviously!

For demonstrations sake, lets say you are building links for a “soccer” related website. As your goal (no pun intended), you want soccer related links.

Broaden Your Target Audience

Your target audience can be thought of as the type of sites you want to use your theme. You can use soccer as your target audience, but in this case lets expand on that and use “sports websites” as our target audience. The reason you should broaden your target audience is to expand your reach. The broader your audience and reach, the more downloads and usage your theme will get.

You now have a goal of getting more soccer related links on sports related websites. Use this to get started on developing a niche specific WordPress theme targeting sports related content.

Note: your goal is NOT to get as many links as you can get. Your goal is to get as many relevant links as you can get. Since these are footer links, they won’t be passing much value, but if they’re relevant, they can pass a ton of value.

Designing Your WordPress Theme

Traditionally you would sit down with a client and learn about their company, goals and target audience. Since you know this already, you can skip all of that and get to the design.

Tip: If you want some design inspiration, Google “CSS Gallery”.

Step 1. Plan It Out!

When designing your WordPress theme, don’t just open up Photoshop and start dragging around rectangles and gradients. In fact, for the time being toss photoshop to the side. Grab a pencil and get some ideas down on paper. Im not suggesting you spend the time creating a perfect wireframe for your free theme, but do put some time sketching out a basic site architecture.

Typically a website will include a header, slider/featured area, content area, right or left sidebar, and footer. Be creative but be mindful you are creating a WordPress theme, and WordPress users love widgetized areas and custom menu options.

Quickly sketch out 5-15 small thumbnail sized ideas, then narrow those ideas down until you have one you like and sketch it out with more detail. This should take no more than 5-10 minutes.

Step 2. Open Up Photoshop & Have Fun!

Now that you have hopefully narrowed down your ideas into one concept you can get started on the .PSD version of the design.

Dimensions: Unless you want to go crazy and develop a really cool responsive WordPress theme, you should stick to a standard grid system. Personally, I live by the 978 Grid System. The 978 grid system is ideal for iPad (1024×768) and up. You can download a .PSD file of the framework from the 978GS website which will have pre-set layers and guides to help your design process.

Design: Start by laying out the design you sketched out. Sometimes it can be helpful to even scan it in and work over it. After you get the background created, move on to the header, then content area, sidebar, and footer until you have a basic website outline with all of your elements in place.

Revisit each section, adding your gradients, shadows, images and other fine details. Focus on a clean, non-cluttered look that your target audience will enjoy.

Use clean stock photography to capture attention. Stock.Xchnge is a great site for free stock photos.

Next, add some filler content with a web safe font to see how your pages and posts will look like on a live site. Paste in a couple Lorem Ipsum paragraphs and add other content elements required by WordPress, such as: h1, h2, h3, h4, h5, h6, blockquote, span, table, tr, th, td, dl (dt, dd), ul, ol, li, address, a, big,cite, code, del, em, ins, kbd, pre, q, s, strong, sub, sup, tt, var, div, span. The more you put in your photoshop file, the easier it will be to transfer over into code.

Be sure to design really cool widget areas, navigation elements, dropdowns, breadcrumbs, comment sections, etc. Its these details that will help get your theme noticed when its in front of people.

Here is what I came up with! A clean, simple, bright and attractive blog design which should stand out amongst other free WordPress themes. I am not going to release this, but I am giving this away as a free download for you to work off of.

Once your happy with the overall look of your design, and once you have all of your visual and required elements in place, you can move on to the theme production and development.

Once again, you can download the PSD file I came up with here.

For a more detailed tutorial on creating a web design in Photoshop, check out this post.

Other great design blogs to reference include:

Theme Development

Since this isn’t a tutorial on how to write html, I am going to assume you know how to develop a basic html/css website from a PSD. If you don’t know html, or don’t have time, consider outsourcing your theme development to a PSD to WordPress shop. You can usually get this done for $99-$150.

Develop Your Design in HTML/CSS First

When it come time to developing your actual WordPress theme, you will save a ton of time by having a fully functional HTML/CSS website to reference. Add all of the filler content and h1 elements, etc so you can copy and paste later. You can also use this template to distribute later as an HTML/CSS template or to develop into other content management systems.

Develop The WordPress Theme

Finally! Time to get excited as your hard work will come to life! Now you can take your HTML template and convert it into a WordPress theme. There are a number of required files and guidelines which can be found here. Please reference that list as I will only be running over some of the main essentials.

Required & Recommended Files:


The stylesheet in a WordPress themes is required to have more than just your css information. The style.css provides details about the theme, including the author, title, description, required license information, etc. At the very top of the stylesheet paste in the following stylesheet header and edit it to fit your information.


Theme Name: Theme Name

Theme URI: http://wordpress.org/

Description: Description of your theme. BE descriptive, this will help with CTR.

Author: wordpressdotorg

Author URI: http://wordpress.org/

Version: 1.0

Tags: add, some, tags, related, to, target, audience, soccer, sports, football, tennis, baseball, etc, this, will, help, you, get, views, sort, of, like, meta, keywords, 10, years, ago

License: GNU General Public License v2.0

License URI: http://www.gnu.org/licenses/gpl-2.0.html

General comments (optional).



Include a screenshot photo with a 4:3 W:H ration (320:240px max size). This image will be visible when searching and selecting a theme, so make it awesome! If you have any great features exclusive to your theme, make sure to list it out or make it prominent on your screenshot.png file.


The header.php file should include your code from your <html> up to your content section, not including the sidebar. You can call the file via get_header(). The header file is required to use correct doctype declaration and must include wp_head() immediately before the ending head tag. wp_head() is a required hook that many plugins require to hook into.

Your main navigation is likely to end up in the header file. You can tap into the custom menu capability with <?php wp_nav_menu( array(‘menu’ => ‘menu name’ ); ?>. By default WordPress will fill this menu with pages as you create them, by setting up a custom menu with “menu name” a user is able to control the items in the menu with specific pages, posts, categories, etc. WordPress will code your menu in a unordered list, so make sure your CSS supports that structure.

index.php, page.php, single.php, 404.php, archive.php, search.php, etc

Assuming your design is straight forward and uses the same basic layout throughout the site, you can use the same code for various templates. Here is how these templates should look. Reference here for more specifics.

<?php get_header(); // this houses the header files from header.php ?>

<?php get_template_part( 'loop', 'index' ); // call the loop to display content ?>

<?php if ( have_posts() ) while ( have_posts() ) : the_post(); // or display the loop directly like so ?>

<h1><?php the_title(); ?></h1>

<?php the_content(); ?>

<?php comments_template(); ?>

<?php endwhile; ?>

<?php get_sidebar(); // this houses the header files from sidebar.php ?>

<?php get_footer(); // this houses the header files from footer.php ?> 


The sidebar will house all of your code for the sidebar area, most likely including any widgetized areas you have created. To setup widgets in your WordPress theme, you must first register your sidebar in functions.php, then you can call on your sidebar with <?php dynamic_sidebar( ‘Sidebar Name‘ ); ?>. Yes, it’s really that easy!


Obviously you can put the themes copyright information and more importantly – a link back to your website! I know you’re thinking “but footer links don’t hold much value these days”…. Don’t worry I’ll show you a few tricks a little later in the post on how to extract as much value out of your link back as you can.

Aside from the copyright information, people seem to love footer widgets to add related posts, links, pictures, etc. You can simply register and name widget areas like you did in the sidebar and place the code accordingly.

Before the ending body tag, place <?php wp_footer(); ?>. You will need this as some plugins require to hook into the footer file.


The dreaded functions.php file – the file that makes your theme run, functioning like a plugin. This is where you can control everything from widgets, excerpts, post meta, theme option panels, the hook into wp_head and wp_footer, and much much more. It’s also required by WordPress. I found out the hard way that you simply can’t just copy and paste or build off of the default twentyten functions file, because you will never get accepted into the repository this way.

I recommend working off of a pre-made functions.php template, and even adding some cool tricks to your theme.

That’s a basic rundown of what goes into developing a WordPress theme. If you search Google, you’ll find a ton of awesome WordPress theme development tutorials.

Package It All Together And Test It! 

Time to test your theme. Include your friends and family for the testing phase, its sometimes nicer to have others look in from the outside to see if you missed any details.

Upload Your Theme

Package your theme files into one uniquely named folder and upload it to a test WordPress install. All WordPress themes need to be uploaded to ../wp-content/themes/ and should include at a minimum the following files:

  • /index.php
  • /functions.php
  • /footer.php
  • /header.php
  • /images/
  • /comments.php
  • /style.css
  • /sidebar.php
  • /single.php
  • /page.php

Distribute Your WordPress Theme

If you’re still reading, congratulations! Really, your work is about to pay for itself times a hundred times over! Your WordPress theme is ready, now its time to get it in front of people and start generating backlinks. Im going to show you how to get included in the WordPress theme repository, and 100+ other sites you can submit to for more targeted links with less restrictions than WordPress.org.

Getting Included In The WordPress Theme Repository

Getting your theme listed in the WordPress.org repository is huge! There has been over 43 million theme downloads to date. Getting your theme listed in here is a must! Before you submit your theme, it must be rock solid – period. You will need clean W3C compliant code and it must match the theme review requirements 100%.

First start by overviewing the Theme Review page. Don’t even think about submitting your theme until you have checked all of those requirements. Requirements include:

  • Code Quality
  • Clean, compliant HTML, CSS, PHP, JS. Correct Doctype.
  • Functionality
  • Themes are required to support proper WordPress core implementation.
  • Supports Template Tags and Hooks
  • Supports WordPress Generated CSS Classes
  • Proper utilization of Theme template files
  • Implementation of Theme Settings and Data Security
  • All Themes are required to be licensed under a GPL
  • Use appropriate Theme Names
  • Credit Links

Credit links are encouraged to be used, though you must not use obvious keyword stuffing techniques. This is where it helps to have a keyword in your company/site name.

Here are a few other things:

  • You must provide sufficient documentation for any custom theme options or functions.
  • Themes are required to meet all requirements in the Theme Unit Test.
  • Themes are required to be kept current once accepted into the repository.

Once you go over the Theme Review and Theme Unit Test, you are ready to submit your theme for review.

WordPress Trac

Trac is the project management system the WordPress team uses to review and comment on themes. Visit http://themes.trac.wordpress.org/ and login with your WordPress.org account.

Submit a ticket. When you submit a ticket, you will upload your theme as a .zip and basically wait for a response. Response time varies, I have seen it take as little as an hour to as long as a week, but it normally takes somewhere between 24-48 hours.

When your theme gets reviewed and your ticket is responded to, there are basically two outcomes:

There was an error with your theme. 99% of the time they will describe to you what the problem is and how you can fix it. Don’t worry, all you have to do is fix the problem and re-upload your theme for further review until its accepted.

Your code & attention to detail is so good you get accepted right away! Congrats! Mission accomplished!

Bonus! Your going to get an authoritative link back to your site from WordPress.org just by submitting your ticket to trac.

Other Sources To Distribute Your Theme

Here’s where it gets really fun! There are hundreds of high traffic free theme resources out there – all of them don’t have the restrictions of WordPress.org. You are not bound to anchor text restrictions or where you can put your link.

Vary The Anchor Text

Remember you have the opportunity to submit to countless websites, so don’t use the same anchor text! Create 5-10+ different “versions” of your theme to distribute on these sites, all targeting different anchor text. Even create a few generic anchors.

Note: Don’t go for exact anchor text. Go for either: 1) partial anchor text or 2) branded anchor text.

Consider a Sidebar Link

You can also place your link elsewhere in the theme that may carry more weight than a footer link, like the sidebar for example. Just make sure its un-obtrusive. If it looks bad, the site owner may not like the theme and may end up not using it.

Get Creative With Conditional Tags

If you really want to get the most out of every usage of your theme, you need to take serious advantage of WordPress Conditional Tags. You can use conditional tags to display different content or templates on different pages across the site. You could essentially have a different link and anchor text on your home page, page template, single post template, category template, etc. This way you can obtain multiple links with different anchor text from just one site using your theme. Here’s how you can use conditional tags (make sure it’s on a site wide file like footer.php or sidebar.php):

<?php if ( is_home()) { ?>

<a href=” HYPERLINK "http://www.domain.com" http://www.domain.com/”>Link on the home page</a>

<?php } elseif ( is_page()) { ?>

<a href=” HYPERLINK "http://www.domain.com" http://www.domain.com/alternative-link/”>Link on all pages</a>

<?php } elseif ( is_single()) { ?>

<a href=” HYPERLINK "http://www.domain.com" http://www.domain.com/omg/”>Link on blog posts</a>

<?php } else { ?>

<a href=” HYPERLINK "http://www.domain.com" http://www.domain.com/another-url/”>Link on any other section</a>

<?php } ?>

WordPress Theme Directories

There are a ton out there, but I decided to only list the best of the best here. You can check out over 100 other free ones if you’d like.

  • http://www.bloggingthemes.com/
  • http://wpthemesdir.com/
  • http://www.freewpblogthemes.com/
  • http://www.freewpskins.com/
  • http://www.fresheezy.com/
  • http://www.ithemes.org/WordPress/
  • http://themes.rock-kitty.net/ (lots of downloads from here)
  • http://www.sponsoredtemplates.com/
  • http://www.themesandmods.net/submit-theme/
  • http://www.themesbase.com/
  • http://themespack.com/
  • http://top-best-themes.com/
  • http://www.web2feel.com/
  • http://weblogtoolscollection.com/
  • http://wordpress3themes.com/
  • http://wordpress4themes.com/
  • http://wpclassic.com/
  • http://www.wp-mojo.com/
  • http://www.wpskins.org/
  • http://www.wp-templates.com/
  • http://www.wpthemesfree.com/
  • http://wp4themes.com/
  • http://www.wpdaddy.com/

Keep Your Theme Updated

There are many reasons to constantly release updates to your theme. By keeping your theme updated and adding new features you can keep adding value to your users, and they will continue to use your theme.

I found this out the hard way… The first theme I released, I basically released it and forgot about it. The links I initially received were great but after awhile website owners and bloggers moved on to other themes, diminishing my link numbers.

Consider initially releasing a basic version of your theme, with plans on adding new features like more widget areas, backend options, style updates, etc. When you update your theme, the user will get a notification in the dashboard that their theme has an update.

What You Can Expect

For me creating WordPress themes is about the easiest daily task I can think of, making the ROI on this technique very, very high in my case. Understandably not everyone lives and breathes WordPress development like me and going through this process can be a very daunting task. Well, let me tell you this, once your theme is released you will gain an enormous amount of links. If you do it right by creating a niche specific theme like I talked about, you will gain an enormous amount links from relevant sources.

The best part about this is that you’re not going to get them all over night, or in a week, but you will get continued natural link growth over and over for the life of the theme. These links numbers can grow and sustain for literally years if you keep your theme updated.

Have Fun and Stay Creative

I hope you got through the post alright and hopefully learned a thing or two on WordPress theme development. I would encourage everyone to try this technique. If you’re new to WordPress or web design just have fun with it! If you get stuck you can always outsource any process of this.

This is just one of many link building techniques out there, many of which are yet undiscovered. Keep thinking outside the box, be creative and develop your own link building techniques that are manageable by you and your staff.

I am looking forward to everyones comments, and please ask if you have any design, development or distribution questions as I would be more than happy to help.

This post was written by...

Casey Kluver – who has written 1 posts on Point Blank SEO.

Casey Kluver+ is the co-founder of Falling Up Media, a Phoenix SEO & Internet Marketing company. He has worked with WordPress since its creation and has been practicing SEO for 3 years. Follow him on Twitter @caseykluver.

Relax - I send out free emails full of
cutting edge link building tips.
  1. Mark Porter says:

    Awesome article!

    I never realised psd to wordpress services were actually quite affordable. I have knocked up
    various wordpress designs out of boredom before but lack the technical knowledge to take them further, so it’s definitely something I’m going to look at.

    It’s a shame that alot of people cut out the links that credit the designer from the footer etc 🙁 I suppose you could encrypt the footer but that usually sets off alarm bells and people tend to avoid them. Even then it’s pretty simple to decrypt it.

    Still an awesome post though!

    • Casey says:

      Hi Mark,
      Thanks for commenting, it is a shame that a lot of users do not keep the footer link. But thats all part of the game, you would be surprised on how many people dont have the knowledge to remove a link though!

      I wouldn’t suggest encrypting anything as you said thats kind of shady, plus you will never get into the WP repository with something like that.

    • Jon Cooper says:

      By making it small, non-obtrusive, and clean (no targeted anchor text), your chances of them getting rid of it significantly lowers.

      But, as always, some people will remove it, but that’s just how it goes.

  2. Chris says:

    If I use a theme (bought or free) I always remove the links =P Mostly because they make a site look cheap when they are at the bottom. However, Casey is right, you would be surprised at how many people do not remove the link. Although, in that case, I doubt many of those sites will reach above PR 5. By that time anyways they would probably be switching to a paid or custom theme or different CMS all together.

    • Jon Cooper says:

      Agreed, but you don’t necessarily need one fantastic blog to have a footer link. If it gets into the WordPress.org repository, it usually gets a few hundred downloads in the first couple days, which lands you around 10-20 PR2-3 blogs.

    • Casey says:

      Jon is right, also by constantly keeping your theme updated and adding new features you can keep users excited about using your theme. Also when someone does update a theme, the files are replaced with the new files. Now that footer link they thought they deleted is back on the site, and sometimes goes un noticed because they thought they took care of it months ago!

      • Bert says:

        I agree, i’ll remember the tip on conditional tags. But it’s not hard to avoid the backlinks with the creation of a child theme. Editing some php files and you avoid the backlinks even with an update of the core theme.

  3. Joel K says:

    I like the idea – I really do. But I find it hilarious we jumped all over GoDaddy for doing literally the exact same thing a few months back. I guess this is just the state of SEO though, you’ve got to trick people into linking to you or they’ll never link to you at all. That’s not a negative sentiment. That’s just reality. Good post.

    The funniest part of this is how insanely well it works despite repeated claims that “footer links are being devalued” and so on. Yeah, no. Most of my most annoying competition dominates for phrases like “Calgary Marketing” solely because they’ve spammed that link into every single client footer they have.

    Will this work forever?

    God I hope not. But it sure as hell does now.

    • Casey says:

      Great point about the GoDaddy stuff. But…

      I do have to say though that going out of your way to create an awesome free niche specific WordPress theme(and not just throwing together something bad) to ultimately help and provide real value to a website owner should deserve a valued link from Google.

  4. That last tip about conditional tags is huge – I wouldn’t suggest implementing this tip without using a conditional tag so the footer link only appeared on a handful of pages. If it’s sitewide, it’s too easy for Google to ignore.

  5. ruggero says:

    Seen the recent Google purging of blog networks links (finally!) – are wordpress themes becoming Spammy links too ? Isn’t it a risky strategy ?

    • Jon Cooper says:

      If the anchors aren’t spammy, and if you’re not trying to make it pull all of the weight (i.e. if profile is already diversified), then yeah, of course it can work. But you’re right, if not done correctly, it can be risky. Still in my opinion not worthy of a penalty, but if you’re not careful, these links might not be very helpful for a lot of reasons.

  6. Sil says:

    The idea is really great, but you should definitely read this before starting to work on the template: http://codex.wordpress.org/Theme_Review#Credit_Links

  7. Luke says:

    I have never thought of using this as a link building strategy. I love designing website stuff, maybe i should give this a try. Thanks for posting this. Great tip!

  8. Hey Casey Kluver

    I am haveing someone designing one for me at the moment, while i am scared of Sidewide links because of the pingvin update, any ideas how to avoide thi problem?

    best regards

  9. Casey says:

    The best way to avoid sitewide links is to use WordPress conditional tags. See http://codex.wordpress.org/Conditional_Tags for more details. Say if you only want the link to show up on the home page you can use “is_home” or “is_front_page” (if your theme uses a frontpage.php file instead of a index.php)

  10. Geekyard says:

    Cool way to increase the Backlinks and popularity. I will start building a WordPress theme and distribute it for FREE 😉

Utilizing Wordpress Themes for Exponential Link Growth - Point Blank SEO