Sometimes I think theme frameworks just aren’t a good thing for the end user.
When it comes to the experience with the least friction, the most welcoming to a new user, and the least technically complex, I just don’t see anything beating a simple theme folder with a handful of template files and an image folder. Whether you’re adding something to the theme or just poking around a bit to see what your site’s theme is doing in there, it’s awesome to be able to open up a file called
header.php that is, you know, actually representative of your theme’s header.
Not all bad, of course
I’m not saying that I think theme frameworks are bad. They aren’t, at all. But, you have to admit that the mindset they come from is one that’s focused on developers first — even very slightly first — and users second.
Frameworks make development faster and simpler in many cases, but if the end product isn’t a handful of template files in one folder it’s really not best for users.
Heck, I’ve used frameworks quite a bit. I actually really like a lot of things about Genesis, for instance, and don’t mind working on projects where it’s the required framework. It works great for me in a lot of ways. But I can’t help but think it doesn’t end up handing the best possible product over to the end user.
…if the end product isn’t a handful of template files in one folder it’s really not best for users.
Here’s the simplest way to illustrate what I’m talking about. Opening up Twenty Ten, Eleven, Twelve, and Thirteen will all give you a similar greeting: somewhere around fifteen files, a stylesheet, and maybe an asset folder or two. Once you’ve opened up one of them, within reason, you know what will greet you the next time. And this is true of many, if not most, WordPress themes.
For a theme built using a framework, let’s say as a child theme which is a pretty popular way to go nowadays. Their theme folder might just contain
style.css files. If they are looking to tweak something about their theme, or learn a bit about how they might do that, they have a heckuva longer way to go than if they opened up a theme full of template files.
If a hypothetical user want to modify the way their category pages display, or at least look at the template to see where a certain phrase or heading is generated, in one case they’ll find a
archive.php file. I bet they’ll look into that one. In the other, more complicated situation, I’m not sure what they would do next.
Best of both worlds
I’ve talked before about the different between a framework theme and what I consider a starter theme, but they are the type of theme I’m likely to start a site with if I have the choice.
After fooling around with Kubrick — and who didn’t way back when? — I remember working with Sandbox for nearly every WordPress website I made. It was nothing I didn’t need, but a lot of stuff that I found really useful. It even had stuff in it that eventually found its way into core WordPress template functions, which is about the best compliment I can imagine a WordPress theme receiving.
The next starter theme that really jumps out at me is WP Framework, by Ptah Dunbar. It was slightly more complex, in the sense that it contained a framework folder that provided some fancy functions to the rest of the theme. Really, looking back at it now, it was just a
/library/ folder in hyperdrive.
For the last year or so I’ve been using Underscores, the starter theme built by Automattic and a handful of contributors. It’s one of the better options I know of right now when it comes to clean, efficient, out-of-the-way themes. Every site I build begins with it.
And one to think on
I realize this isn’t the most groundbreaking thing to write up and say. But it’s something I’ve been thinking about recently, particularly when building within different framework projects. And hey, I’ve got to come back and start writing with something, right? This seemed about as good a topic as anything else.
There’s usually a decent amount of discussion around the dashboard side of usability with themes, and I’ve definitely participated in those in the past. But how often do we really think about the file structure and code complexity of our themes, and what a new user looking to go digging around might find?
For a user looking into a framework-built theme, they will likely be peeking into a folder that looks very different than what we saw tearing into Kubrick years ago. Maybe that’s a good thing, but I’m not so sure it is.