My last two talks at WordCamps have been about Frameworks vs. Parent/Child Themes vs. Starter themes and why you might choose one over another, given any particular project. It’s not the most exciting topic, but it’s one that’s relevant to a good number of WP Devs out there.
If you have worked with WordPress theme development for any length of time, then you know what tools work best for you. Maybe it’s Roots Theme every time; maybe you’re a Genesis Person; or maybe you roll your own every time. That’s great.
For the last year or so, I’ve been building everything from a starter theme. I love the control that I have and that I’m really building something from very little. It’s been more satisfying, as a theme dev and also has forced me to learn a lot more about WordPress than I would have thought; and continually humbles just how much more there is to learn. That’s a good thing.
Well, this week, a friend and mentor of mine came to me in a bit of a bind. You know the kind: “Dude, we need this site built in a week and the budget is X dollars where ‘X’ doesn’t quite match up to the amount of time and headache the project is likely to exact upon your already hectic schedule. I, as a general rule, turn down this type of work. In this case, I just couldn’t. This is someone who gave me a lot of their time and experience when I was really coming on board as a business person back in 2010. With a sigh I said, “Sure, buddy, let’s hash details.” The good thing was that everything was available. FTP Access, cPanel access, design PSD, content. Awesome! I like that! They even had a theme up and running, too. It just needed to be “finished.” Well, digging into the thing was awful. It was the shoppica theme, which you can buy on ThemeForest… But don’t. Just. Don’t.
The theme was firing off a ton of errors while the site was in debug mode and there were plugins loading directly from the theme that was causing conflicts with other plugins… Gah! You know how this can go, right? If you’ve built sites for clients, you’ve been in the trenches and know how this goes. And so did I. I’ve travelled down the deep and dark paths of “poorly built” themes and regretted the journey each time. I said, no way, not again and I began to weigh my options…
Take the existing design and put it in Underscores and go; or take a framework and go that route. Underscores was appealing, but I’m not a fast developer by any stretch. Not at all. I knew that to rebuild the design from a starter theme was going to take a good 7 or so days of work (considering I have other projects I’m working on, too) but this was due in 5 days. I know the Genesis Framework rather well and it had been my trusted tool of choice before I started using Underscores. It was a no brainer. It’s as though I reached into the closet and pulled out my trusty hi-tech plasma sword. All told, I rebuilt the site in about 10hrs with some pretty heaving customizations to the homepage and also adding a means to create landing pages (leveraging Advanced Custom Fields Heavily). I was pretty damn relieved and my friend was, too, obviously.
The moral of the story here, and one of the reasons why I just love the WordPress eco-system, is that there are just so many cool ways to skin a cat (don’t actually skin a cat though, that’s kinda fucked up). It’s not as though my route was the best one to take, but it did work for me and it really came down to knowing my tools and getting out there and using them. In this instance all the stuff that makes working with a framework great (having set typography, pre-made grids, basic responsiveness etc) really ramped up my ability to deliver in a timely fashion. This is why we, as developers, SHOULD be experimenting with the various tools available to us.