WordPress Theme Frameworks Are Overrrated
In software development there's this concept of abstraction that permeates all activities. In a nutshell, abstraction is hiding of unnecessary details from those that don't need to know them. The end result is a piece of software that is easier to interact with and that is, in theory, more stable even when underlying code is changed.
I believe the biggest promise of WordPress theme frameworks is the potential to abstract away theme details from end-users and provide them with more flexibility and stability. However, in practice I don't think theme frameworks are really all they're cracked up to be. At least not for every audience.
First, let me provide a little context. I'm neither a PHP expert or a WordPress expert. However, I'm good enough to figure out from documentation and sample code how to make most of the theme customizations I want by modifying the PHP code. Here's why I don't like theme frameworks:
- Theme frameworks require me to learn a whole new set of hooks to accomplish tasks. So rather than looking up PHP or WordPress functions, I need to figure out the theme hooks. Another layer of learning I don't want to have to bother with.
- What you learn about a theme framework isn't portable. Switch frameworks and you're starting all over again. Of course, this is good for the seller of the framework as it locks you in.
- They include functionality that they shouldn't include potentially resulting in bloated and slow running code. Take for instance SEO that every framework attempts to address that is never as good as the SEO plugins you can download and that are regularly maintained.
- They also include features to satisfy as large an audience as possible, but this means you're stuck with all of this overhead once you've settled on the specific features you want which may be a small subset of everything available.
- There isn't as much free support as there is for standard WordPress themes because standard themes use standard WordPress hooks and PHP.
- As design styles change over the years I'm going to want to change the look of my site. I prefer to have the more extensive options offered by theme designers especially those entering the scene and trying to make a name for themselves with awesome themes.
- Despite the promise of having many options with child themes, have you noticed that they kind of all look the same?
Now the one area where I think theme frameworks makes sense is if you're a developer creating sites for other people. Then you get benefits of more rapid development and the extra learning you need to do is amortized over multiple projects. And hey, it's not so bad that theme frameworks keep your clients from making changes since that means more billable hours for you, right?