The WordPress Starter Theme Project

A few weeks ago I got the idea of creating a “starter theme” to work from when I’m beginning to port an HTML template to WordPress. After I’ve finished the mock-ups in XHTML and CSS, it’s always the same process: copy the style.css to the theme folder, chop up the HTML into various PHP files, tweak some stuff, and ship off the theme. During that process I often find myself going back to the default theme for various tags, formats, and templates.

I’ve spent a few weeks toying with this “starter kit” to make it help my development workflow as much as possible. Now I’m releasing this kit to the public, untouched, for you to download. This is what I use when I begin creating a WordPress theme after the HTML-ing is done.

Please download the files and try it out. There’s a full comments.php file, a functions.php file with the widget code already there, and many other files containing the code I use most, such as the loop and other template tags.

After you’ve used it, I’d appreciate it if you came back and left your feedback in the comments. What you like, what you don’t like, what you’d change, and what you’d add. Then I’ll take the feedback, modify the kit, and release a new version. My goal is to ultimately create the best “starter theme” possible and have a system that anyone can use to quickly port an HTML layout to WordPress.

Later on, I think it’d be neat to make this some sort of a hands-on tutorial. Instead of writing one huge tutorial telling you how to create a theme, I want to experiment and provide something beginners can download and use to learn the ins and outs of creating a theme. Each file would be fully commented, explain what each area does, and provide some helpful tags to help you get started.

Here are some of the features of my starter theme:

  • Blank style.css with theme name, author, URL, etc. tags at the top
  • Content-ready 404, archive, search, index, single post, and page files
  • Full, working comments.php file
  • Complete header.php set up with links to RSS, a stylesheet, and JS file; <title> template
  • Default search form template
  • Blank screenshot.png file and images folder

Please download this theme and try it out, then come back here and let me know what you think. This empty template has certainly sped up my theme development workflow, and I hope it’ll do the same for you.

Download Dan’s Starter Theme

70 Responses to “The WordPress Starter Theme Project”

adelle
Posted on July 9th, 2008 at 8:19 PM

Dan, this is great - thanks for sharing!

Ryan Ray
Posted on July 9th, 2008 at 8:28 PM

Incredible idea! I’m just really getting into theme modding and this should be an awesome resource. I will be making a new theme soon and will try this out. I’ll let you know if I have success, thanks again!

Hafiz Rahman
Posted on July 9th, 2008 at 8:35 PM

Hi guys,
congratulations for the release! I’ve checked it and I liked what I see so far. I wonder what’s the reasoning for having a fully-working comment area but not fully working wp loop that actually display contents?

Dan Philibin
Posted on July 9th, 2008 at 8:39 PM

@Hafix the comments area doesn’t really work much more than the loop does. I have a few template tags in comments.php because those are different from what’s used in the loop.

The loops work, there just isn’t anything inside of them. I leave it empty so it’s easy to copy and paste HTML inside.

Blake Imeson
Posted on July 9th, 2008 at 8:46 PM

Dan,
Thanks so much for doing this. I have been wanting to start building themes and your idea about having the code commented with instructions is terrific.

People like you are what makes the Wordpress community the amazing group it is.

Thanks!
Blake

Ryan Imel
Posted on July 9th, 2008 at 9:31 PM

Dan, is it? Good idea, with the starter theme. I’m a fan of Sandbox, from plaintxt.org. Check it out if you are interested in WordPress workflow.

And feel free to contact me, either at my site or my email. I’m sure we would have a lot to talk about.

Tim Schmoyer
Posted on July 9th, 2008 at 10:04 PM

Hey, great idea!

Jerry Thomas
Posted on July 9th, 2008 at 10:26 PM

I just subscribed to your RSS feed a couple of days ago. Looks like my timing was just about perfect.

I look forward to watching this project develop.

Andrew McCloud
Posted on July 10th, 2008 at 4:08 AM

There is always the Starkers theme - http://elliotjaystocks.com/blog/archive/2008/free-starkers-wordpress-theme/

Matt
Posted on July 10th, 2008 at 9:15 AM

I have wanted to try and modify my own theme and this seems a great way to start

Dan Philibin
Posted on July 10th, 2008 at 9:18 AM

I’ve seen a few other theme “frameworks” out there, and they’re all great. This isn’t a framework, and it’s not intended to work as a theme right out of the box. Rather, it’s a basic template that I can paste right into without worrying about typing out the loop and standard header.php information every time I create a theme.

I’ve looked at other theme frameworks and they’re full of real, working loops using every template tag out there, a full CSS stylesheet, and an actual page structure. I’d spend 10 minutes just deleting all of that and replacing it with my own HTML and CSS. With this theme kit, I can just start from scratch.

So really, the purpose of this project is to take my empty base theme and turn it into a working beginners tutorial. That means adding template tags, comments, and instructions to the theme while still keeping it clean and simple.

So yeah, download the theme and try it out, and thanks to everyone that’s done that so far. The next step is to think about how it can be improved and what can be done to turn this theme into a teaching tool for beginners.

-dan

Patrick Sweeney
Posted on July 10th, 2008 at 10:00 AM

Excellent! I blogged about this on my site, my readers will love this.

Omar
Posted on July 10th, 2008 at 11:59 AM

loving this kit! already using it, thanks alot!

Steven Snell
Posted on July 10th, 2008 at 6:08 PM

Very nice. I’ll have to download it and play around a little.

Bruce Alrighty
Posted on July 11th, 2008 at 3:36 AM

This is a great idea.
I was just about to create a new wordpress theme and with this it will be even easier.

Bruce Alrighty
Posted on July 11th, 2008 at 5:55 PM

Every time I active the theme it breaks the admin.

Dan Philibin
Posted on July 11th, 2008 at 5:58 PM

@Bruce I don’t get any problems. Try adding styles to the stylesheet. Remember, it’s an empty theme, not an out-of-the-box usable theme.

Bruce Alrighty
Posted on July 12th, 2008 at 4:37 AM

@Dan I added styles to the stylesheet and the theme works fine but when I use this theme it causes the admin to work incorrectly. Links don’t work right and changing themes doesn’t work properly.

matt
Posted on July 12th, 2008 at 10:58 PM

Thanks for this! I’ve been trying to design my own theme for a couple of weeks now but hitting road blocks. I successfully finished it off last night using your starter theme as the foundation.

Jennifer
Posted on July 22nd, 2008 at 3:46 AM

Thanks very much for this. It’s a big time saver.

Ian Stewart
Posted on July 22nd, 2008 at 11:13 PM

Great job on this, Dan.

Josh
Posted on August 15th, 2008 at 6:45 PM

Thanks.

A little error: there shouldn’t be any empty lines outside of <?php tags in the functions.php file. This causes the RSS feed to not validate and has been really frustrating me today.

Jesse Dodds
Posted on August 22nd, 2008 at 5:17 AM

Amazingly useful… I was actually thinking how great something like this would be only a few days ago. Cheers! ¶

Ben Leivian
Posted on August 22nd, 2008 at 10:03 AM

This is great, thanks for sharing!

Mark
Posted on August 22nd, 2008 at 10:15 PM

iLL Give it a try. Hasn’t anyone heard of wpthemerkit ???? It is how I finally learned how to make themes.

Dan
Posted on September 9th, 2008 at 5:14 PM

Hey Dan! Great idea. I was wondering if you have to keep updating this every time a new Wordpress update comes out. I’m not sure how Wordpress updates affect themes. Is there somewhere to check? Any ideas?

Cathy | Healing Graphics
Posted on September 12th, 2008 at 12:06 AM

Hi there, I found you searching for a blank theme. I saw the css starter frameworks, but I think I’m like you - I like designing my own css & html, it is really the wordpress tags that I end up spending so much time on. And then I also end up getting behind on the versions of wordpress too. So as new things are added - photoblogs and galleries for one - it would be great to keep this project up to date. As I’m sure you will do for your own projects…

Question - Is it imperative to create themes that work out - of - the- box? And if so, how do you get the galleries and sliding content, and fancy features everywhere? ie: a magazine theme with excerpts on the front - linked to a photo. I wrote this code for myself, but it is complicated and I don’t understand it all, and I’m sure it will be obsolete soon. So do you have an indepth knowledge of php or do you use plugins? Or???

thanks for any help you can offer!

Dan Philibin
Posted on September 12th, 2008 at 2:02 PM

@Cathy I know some basic PHP from working with WordPress and the CodeIgniter framework so I write my own plugins from time to time. Usually, there’s something out there to accomplish what I need to do.

omkar
Posted on September 16th, 2008 at 2:40 AM

hay! Dan Its a Great idea. swift start to theme any HTML R u going to release any updated version ?.

John
Posted on September 28th, 2008 at 10:40 PM

More goodies from the team. Thanks!

Taylor Dewey
Posted on November 7th, 2008 at 9:19 PM

This was exactly what I was looking for — all of the template files and their basic structure/loops/etc, but nothing else so that I can build what I want without worrying about the WordPress specifics.

I know you’re trying to keep it style-free, but WordPress has some default CSS that it sort of expects. You may want to consider including that. http://codex.wordpress.org/CSS

I plan on keeping a copy of this locally, with some of the CSS set up the way I like to use it so that I’m ready to go on any new Theme development. Thank you very much for providing for this tool.

Jon Upchurch
Posted on February 12th, 2009 at 4:40 PM

Thanks a million. I understand the concepts of doing all sorts of things in Wordpress, but getting something that worked out of the gate that didn’t have anything I needed to get rid of before modifying is awesome.

Thanks!

Trackbacks