DevPress co-founder, Tung, wrote the most amazing series of tutorials on creating WordPress themes from start to finish in 2007.
I want to start this post by giving credit where it’s due. When I first started creating my own WordPress themes, this tutorial taught me everything. I know a ton of other theme developers who learned from him. Honestly, I should’ve just written a post thanking him for what he gave back to the community during that time.
It’s amazing how time flies. It’s now been just over four years since the completion of the series. Things have changed quite dramatically in the WordPress theme landscape since then. The original series still has a lot to offer, but it’s definitely showing its age.
Many have attempted to recreate the magic of that old set of tutorials, but no one has truly topped it. That will be my goal. I will attempt to write a better tutorial series on the topic, one that’s now long overdue in the WordPress community.
What this tutorial series is about
I have a strict philosophy on what belongs in WordPress themes. That philosophy will be the driving force behind this series. I will teach you how to create themes that use WordPress standards and don’t have a ton of plugin functionality thrown into the mix.
I plan to strip theme development down to its bare essentials. You will be taught the standard functions and be given the skills you need to get started creating your own themes.
If you create a theme after following this tutorial series, your theme will have a high likelihood of passing the theme review guidelines. Therefore, you shouldn’t have any issues getting your theme hosted on the WordPress theme repository. You will also have a more solid code base than 90% of the commercial themes I’ve seen.
This series of tutorials will be geared toward absolute beginners to theme development. However, there will be bits and pieces that seasoned developers can use.
Skills you need
Technically, you don’t need any skills to learn from this series aside from some familiarity with WordPress and themes. It will be a major plus if you have some beginning knowledge of:
- HTML: You can probably get by with little HTML know-how by just following this series. I highly recommend learning this in your free time though.
- CSS: I will be covering some standard WordPress CSS elements throughout the tutorial, but I can’t teach you how to design. Once you learn how to create a WordPress theme, it will be up to you to decide how to style it. You might actually want to create something pretty.
- PHP: You don’t need to know any PHP at all. WordPress actually makes this fairly simple for theme developers. I will also explain all PHP used throughout the series, but knowing some basics will help tremendously.
Tools you need
I’ll keep this simple. Make sure you have these things before the first tutorial is posted:
- WordPress: You need to have a test installation of WordPress set up. I’ll assume you know how to do this beforehand. Preferably, you would set up a test install on your computer (locally). If you’re unfamiliar with this process, read Installing WordPress and Xampp.
- Test data: You can create your own test data or use the theme unit test data. This will give you some content to test your theme.
- Text/code editor: There are tons to choose from. I’m a fan of Notepad++ for its simplicity and code highlighting.
Ready to be a theme designer?
I’ll try not to overwhelm you with each tutorial in the series and break each post up into digestible parts. Just let me know if you get lost.
So, before we get started, make sure you have the proper tools. Then, you’ll be ready for the first tutorial when its published.
Oh. I am ready! Looking forward to it!
I’m putting a lot of hope in this upcoming tutorials. Thank you DevPress!!!
I’m so excited..I think I just peed a little. Can’t wait to get started.
We really need to put up a page with our favorite comments.
Keeping an eye on this one.
Excellent! One request: can you please devote a chapter to turning an existing design (either Photoshop or HTML) into a WordPress theme?
That would probably be a better written tutorial coming from Tung or Patrick some day. It’s a bit outside the scope of what I’m trying to accomplish.
I’m ready too. I have learnt a lot looking the code of Hybrid and DevPress themes and now it’s time to make my own parent theme. And it does’nt hurt that you are writing tutorial about it. In DevPress we trust.
Nice, preparing my weapons
This is a great idea! I did not follow Tung’s series. But I did follow a series of videos elsewhere (I think it was one of the old Envato blogs?). But that was all pre-3.0. It will be good to get a solid grounding, and an education in best practice in the “WP Way” from the ground up.
I look forward to the series, and in conjunction with the 32 day theme challenge, I think this will give some great insights into the theming process as a whole.
using hybrid core?
Nope. Using WordPress only. You’ve got to learn how to walk before you run, so to speak.
cool, so a bit like the themeshaper series
http://themeshaper.com/2009/06/22/wordpress-themes-templates-tutorial/
If this series are going to have the same high quality as those over at http://justintadlock.com/ well…. Then i will learn a lot! Looking forward to the first tutorial!
Justin, I don’t know why, but since I discovered you I feel I’ve been doing it all wrong. Now, when I finish cleaning one of my templates, taking extra functionality to /mu-plugins or adapting my functions.php to look like the one you clearly explained, I add a comment to my file that reads “Nice, clean… justintadlocked!”. When all of them are justintadlocked, my theme is finished and ready.
I hope to learn even more from this series. Thank you. No, really.
Well, I learn something new every day from the WordPress community. I’m just trying to share this knowledge with everyone else.
Hi, my first port here. I’m a big fan of Tung’s tutorials. I’m so excited that Justin will be creating a new set. As it turned out, he used them too, and now they are members of the same team!
I’ve been still using the themes built by following Small Potato’s tutorials. They still work, get updated automatically without any errors, and compatible with all plugins I ever used.
Ah I can’t wait to get going with these. I hate to be the one that asks the cheeky question but…when do we begin?
Thanks Justin for your great work in the community
Oohhh! Totally awesome! I can’t wait for this series! You’ve just done an ‘init’ action in my pants!
It’s funny how we all tend to learn WordPress theming from from other people! I know when I started learning I watched a series of screencasts on one of the Envato blogs and I went from there. At the time I didn’t take the time out to comment on it to thank the author but ever since then I’ve made sure I always commenting on anything I see in terms of WordPress education and people giving back to the WordPress community.
I’m looking forward to picking up some tips from you because Professional WordPress Plugin Development is pretty much my bible
It’s funny that you mention learning from others and my book. I learned tons about coding plugins from Ozh, one of my co-authors.
I’m looking forward this. Started designing my first real theme but need to learn from the pros before I take it to WP. Lest it be a hack job!
Great news! Bring it.
I am excited right now.
Waiting for it to start. I am sure it will be great as i have been reading your personal blog for about 2 years now
Hi Justin, I’ve been halfway through ‘Digging into Wordpress’ yet still am looking forward for this series to commence. PHP, essentially Wordpress is a vast topic to learn and enjoy simultaneously.
Great news!
i try to create one and failed.
thanks justin! counting the seconds … I am an illustrator, animator and I love design. My tools are always pencils, paper, vectors and frames. But increasingly I fall in love by the codes and wordpress. I have studied many tutorials, but there are still many gaps. now I’m following you and I hope to learn a lot. I share the same philosophy! good luck!
ps: thanks to the link on this post, I read the amazing explanation of small-potato. I regret not having known this tutorial in his time. but I’m happy because now I’m at the right time!
I’m looking forward to this. I’m pretty well versed at creating custom themes for clients of mine but I need to brush up on how to make themes that are suited for wide distribution. Themes that are easy for non-technical persons to use. Hopefully this tutorial series will include some of that information.
Guys, thanks for being online! Here’s my question: Are different mobile devices an issue for this series? You know, floating styles to handle, what users should not worry about. Always a good buddy when it comes to creating responsive layouts.
That will be outside the scope of the series. I will touch on design and CSS to some extent, but those are things that are not specific to WordPress themes. They apply to any design on the Web.
I know that Patrick is working with some responsive layout stuff. Maybe you can prod him into writing a tutorial on his experiences.
I like your idea using the basics approach to teach people how to be able to design their own themes using wordpress.By teaching how to make themes this way tends to keep interested people focused on the basic elements instead of on the available plugins.
I’m Ready and looking forward to learn template designing. i’m not familier with CSS but i think i’ll find the way by watching your arlicke forward. Thanks
I am looking forward to this series. I have designed WordPress templates for all kinds of clients over the past year, but never really got into the true details of creating a theme (I usually convert my HTML to WordPress and add a few of the template pages). It’s going to be awesome to tap into your knowledge of theming. Keep it up!