11 Principles to Design a Great WordPress Theme
After a couple weeks of reviewing WordPress themes (and countless weeks prior judging designs in general) I have established the following guidelines for creating an awesome WordPress theme. At the very least, following these guidelines will get a stamp of approval from picky designers.
At the same time, pay attention to these things when choosing a theme. If the author went through the trouble to follow certain standards, I’ll bet it is quality work.
1. Validate your code
I can’t emphasize this enough. Honestly, for how easy it is to validate your work, the lack of proper validation is evidence of a lazy theme author that doesn’t bother to run a couple checks. Validate your HTML. Then validate your CSS. Think of it as using good grammar. Everyone will appreciate it.
2. Make it work across browsers
Firefox, Internet Explorer, Opera…the big boys are important. According to Jakob Nielsen in Prioritizing Web Usability, best practice is to wait six years after the release of a new browser before ignoring an old one. Thankfully we can forget about IE5. But IE6 is still out there. Prepare for all browsers, and if you can’t make it work, add in fixes so your theme degrades gracefully. A very useful tool for this purpose is Browsershots.org.
3. Comment your code
For some themes this is not a big problem. If you don’t modify much from the default WP theme, it probably isn’t a big deal. Use this principle: if you won’t be able to follow your code in two years, no one else will be able to tomorrow. Comment more than you think you should.
4. Be yourself. Be unique
Nothing is more annoying than to hit that Test Run link and see, basically, the same default WordPress theme wrapped in a big image. Go through the trouble of making your theme original. More people will use it.
5. Prepare for the test run
The Test Run is extremely important. Format your content code to be able to handle all of the default content the WordPress Theme Viewer will drop into it. If your theme looks bad in the test run, very few people will think it will look good on their site.
6. Make the content king
Sort of goes with the above. Leave plenty of room for people to dump content into your theme. Yes, you are an artist. And yes, your work is (sometimes) beautiful. But no one else is concerned with displaying your art on their site. They are concerned with their stuff. How will your stuff make their stuff look. Make their stuff look good, and you will have a popular theme.
7. Make it widget-ready
If your theme isn’t widget ready it’s way behind everyone else. Get into the habit of including this with every theme you make. Users love Widgets because they’re easy. So do the work for them.
8. Customize the 404 page
It’s amazing how many themes either don’t bother formatting this page or completely leave it out of the theme files. This is (aside from the landing page) the most important file in your theme. A user experience can be made or broken by the “404” experience. A more in depth look at this, over at Theme Playground.
9. Customize all the easy-to-forget pages
Start a checklist. Start with the easy ones. Main index template (check). Page template (check). Single post template (check). Attachment page template (whoops). Search results template page (whoops). You get the idea. Don’t leave anything out, or it will frustrate your users down the line.
10. Provide quick response and support
Anyone who installs your theme is a customer. Treat them that way. Subscribe to your pages on the Theme Viewer. Pay close attention to user response. Your goal is to keep your tag in the footer on their site as long as possible, right? One way to do that is to make servicing your theme a priority.
11. Would you use it?
Probably the easiest test of all. Some of the most successful themes downloaded today are those that were once used by the big guys (for instance, DailyBlogTips). There’s a reason for this. If your theme is tried and true, people will see that. Using it yourself, you will work the kinks out. You treat your own design very well. do the same for the themes you create, and you will see a huge response.
57 Responses to “11 Principles to Design a Great WordPress Theme”
Great article, Ryan … very appropriate for the WordPress theme design commuunity!
Cory, good to know you liked it, since you are of the best WP designers around the net.
Definately good, solid advice here. It’s sad to so much rubbish in the Theme Viewer these days.
I think there’s something to be said for customizing a unique WordPress theme for your own blog. I like to think mine’s pretty nice, even though it has no portability for other websites. That’s part of the charm, actually, knowing that it’s tailored to fit my site and nobody else’s. Then again, maybe I’m just being selfish and lazy by not making it portable. 😉
Dan and Jennfer
Hey Daniel, great points.
I didn’t realize your theme was available to download – that’s awesome.
I was just looking around for a theme to use for our next blog we’ll be launching in about a month on spirituality, personal growth, etc – topics which are very important to me and Jennifer.
Have an awesome day!
Daniel, wow man … now that’s an honor … being given a compliment like that from you!
DBT is one of my favorite feed reads! I can’t wait to see what else is coming … learned a ton from ya.
Nice tips. I designed a WP theme for my site few days back.
I think a good theme should also come with features that can be implemented directly with it, without the need for further plugins.
For e.g making it SEO optimised by tweaking the way the title is displayed, providing excerpt content for months,category,etc.
More features could also be like quick shooting stats : displaying the number of posts,comments and categories the blog has ; quick social bookmarking features like icons and links to submit to digg-like sites easily ; appropriate section for ad and affiliate links
I also posted something alike telling bloggers how to choose a good theme 🙂
Good advice Ryan. I’ve been trying to get a few themes completed that have been in the works (for too long actually), but this post made me realize it’s better to be certain I’m releasing quality themes rather than hurrying just to get them out… bad product = bad rep, right? 🙂
love it. the last one should be put at first. 😀
Great list. I’ve not started on designing my own theme yet, but I’ve bookmarked this page to refer to once I get started. Thanks 🙂
Wonderful stuff here…just what I need. I shouldn’t say I’m fully comprehending everything, but at least I could come back here when I get stuck doing this theme thingy. This is one of the major issues that’s keeping me from really starting my blog.
Thanks to Kirsty’s site I discovered yours!
Wonderful stuff here…just what I need. I shouldn’t say I’m fully comprehending everything, but at least I could come back here when I get stuck doing this theme thingy.
Thanks to Kirsty’s site I discovered yours!
Great tips…thanks guys! I have been a reader of this blog for a while and I check back often because the tips are very intuitive and helpful. Thanks to you, I have my own blog rolling and generating revenue Nicely! Check it out: http://www.OrlandoCondo411.com
I’d add one thing. When I was checking out possible themes, I was really turned oof by ones that did wrap text around images in posts properly. If that didn’t seem to work on the test run I just moved on, no matter how attractive I thought the theme was.
taken on board 🙂
Clear bases for design – good work:)
nice post Ryan..
very simple but usefull..
but i think the tips are too general..
anybody want to make the spesific tips..??
eg: make the code simple to speed up your blog or tips to use some characters etc..
sorry for my bad comment Ryan
Thanks for this article!. Having my own design will be great.
a strong article for newbies, keeping these steps in mind,nothing would stop one form becomming a better Blogger.
thank you, nice tips man. i think the good is simple theme but powerful no need to much images.
Ryan, great article! Everybody should validate their code.
Please make an article about principles to design in blogspot. Thanks
Comments are closed.