WordPress has been around for over 10 years, in that time there have been more then half a billion downloads of plugins from the WordPress.org plugin repository and over 100 million themes currently on the WordPress.org theme repository. That is a lot, but there are still more out there from ThemeForest and CodeCanyon to the other individually owned and operated shops for both plugins and themes.

One of the bigger development items to use with WordPress is a theme framework, like Genesis and Thesis. These theme frameworks are built as a starting point for you to build something more customized from. WordPress Codex has a whole page about Theme Frameworks which only includes some of the frameworks out there.

Since the creation of these there has been a lot of conversations about whether or not to use them, and I think they hold their merit, but I think it depends who you are and how far you want to advance yourself.

business man with dollar signWho uses Theme Frameworks and Why?

Theme Frameworks are popular in many crowds, from designers who are trying to develop their own themes without much need for advanced coding knowledge, to developers looking to save some time on their builds. However, if you think about it, everyone using these frameworks have a commonality, and that is business.

Business Development

If you are running an agency, or a freelancer who just wants to crank out sites as fast as possible to get the pay, then a framework like Genesis as a parent theme may fit your needs well, it already includes shortcodes, and functionality that you may not want to code yourself to save time. For those who are not developers by trade, this is also useful since you don’t need to necessarily learn al that extra code that is involved with the extra functionality.

Who dislikes Theme Frameworks and Why?

I don’t like frameworks, and I have a few reasons why. First and foremost, I am a developer, so the thought of using someone else’s possibly bad code doesn’t suit me, even when working on a client’s website. I don’t feel like I should be putting my name on sites and projects that I cannot back up all code for. While I do utilize some plugins, I take into account what kind of code they are going to be adding to my (client’s) site, will it slow it down? will it break unnecessarily?

Developers hate unnecessary bloat

No matter how you put it, unless you are using every single feature of your Theme Framework (which is rare), then you are potentially loading and at least storing lines of code that are completely unnecessary for the site to run. This may cause issues with site speed, site functionality, and with excess unused files, can effect things with your host (if you are on a limited capacity hosting account, this may be important)

Its a Crutch

Computer geekI was going to put this into my last point and tie it into developers, but this is a pretty big point. I was talking to a friend Alex V. of DigiSavvy, who was talking to another WordPress developer and the point came up that if you can code with a framework, chances are you can code without a framework.

That is where my annoyance of frameworks come from. I love good code, and I love teaching good code. When someone comes up to me and says they are a developer, but only build with frameworks, I must ask them why!? (exclamation definitely needed). If you are a developer you should be able to make a framework, so why lean on one? If you know that there could potentially be unnecessarily scripts, css, html, etc. that is just sitting there.. why use it?

For developers starting out, frameworks could be a way to learn code. I think that is fine, when I started with WordPress I did not just start by creating my own themes, but looking and tweaking existing themes (default, Kubrik, etc.). However once I got comfortable enough I started to really dive into creating my own themes, then my own plugins. I know look back and know that Genesis and other frameworks are the way to go nowadays (they didn’t exist when I first started developing for WordPress), but they are still a crutch if you have learned enough to stop using them, but still do.

The question is: What are your goals?

So I am not going to be one of those that takes a definitive side here. WordPress theme frameworks are not for me, I have built a few to meet my own needs, and have built themes that I start from (basically Twitter Bootstrap + index.php  ), but my goal in life is to be an outstanding developer, and with that comes the constant drive to learn and do better.

If you are looking to not code that much, but still run a small business making WordPress websites, then a theme framework is right for you. If you are a veteran WordPress person, and you just don’t care to learn more about coding and what you can do with code, then a theme framework might be right for you.

However if you want to become a true developer maybe making and building things that people take notice of in the communities, then I highly recommend getting off frameworks, because as soon as you do, a whole new world will open to you. Yes, it may take you 1 more week to build that website for a client, but you can be that much more proud of your work when you are done with it. But I do not make my living off clients.

 

Leave a Reply

6 Comments on "To Theme Framework or Not to Framework"

Notify of
avatar
Sort by:   newest | oldest | most voted
alex vasquez
Guest

Well said, Roy. To restate our conversation at WordCamp Orange County, you really did help send me on a path that’s helped me grow so much over the last couple of years. I was one of those people leaning heavily on a Framework. I’ll still use a framework if I think it’s well suited for a project, but for the most part I build from scratch and I’ve learned much, much more that way.

Thanks for bringing it home! =)

Roy
Guest
@disqus_NmBb4JUxQf:disqus I appreciate that! And that was what really inspired me, and Andrew B. and I talked about it for most of the ride home. One thing I just mentioned on Facebook AWP, which anyone reading who loves frameworks should know.. is I do not pay my rent by building WordPress sites for clients… my opinion is coming fro someone who only codes WordPress nowadays for fun. I am starting to contribute to core in my free time instead, as well as contributing to feature plugins. If I did have an awesome company like digisavvy, or basically made a living… Read more »
Michael Cain
Guest

A starter theme (such as _s or roots) would be a decent compromise for developers not wanting the bloat of a framework, but not wanting to start from scratch on each theme project. Do you have an opinion on starter themes?

Roy
Guest

I like starter themes, for the most part, they are light weight and a great place to start developing. I think it depends on your personal preferences. I found a _s with bootstrap theme. I am looking over it, but find myself deleting a lot more then I am adding so far, but I do like the addition of bootstrap.

Lasse Larsen
Guest

I first really liked the idea of not reinventing the wheel over and over for each client. Code already built that has been (hopefully) tested in production etc, but the more I get into it, themes like roots etc seem like you say more of a crutch than a help due to its severe bloat. And they arent even the worst or the biggest out there, but they have a way of doing things that work for them, but not for most, well not me at least…

Roy
Guest
I don’t consider Roots or _s a framework.. Funny we just had this convo last night at a meetup. Those 2 are starter themes, you don’t make a child theme from them, you just create. Roots moreso being better because it really allows you to pick apart what you don’t need right off the bat, easily. There are extra files there that are non-wp related (for grunt, etc.) but those won’t effect your site. I’m talking about things like Genesis, or other frameworks where you spend more time doing actions, and hooks to load that slider, which is already built,… Read more »
wpDiscuz