Why I Don’t Use Shifter Anymore
Recently, someone stopped by the contact form and sent in this question:
Why aren’t you using shifter on your site? It seems from the questions and the remarks in your posts on the forums you stand by it.. But why not use it here? Do you really think its as powerful as they say? I don’t want to waste the $200 on something that isn’t what I thought it was.. Do you really stand by it and is it something you would say is the best of its kind?
The reasons I don’t use Shifter anymore are more of a personal thing rather than the fault of Shifter. When I first came upon the Shifter theme system, I was marveled by it. I ranted and raved about how cool it was and how much it reminded me of the Joomla module system. To this day, I have yet to see a theme offer the type of support for widgetized areas of a design. The Shifter theme is extremely versatile, opening up a wide range of configurations without having to touch any code. My problem with Shifter is that I ended up hacking the core files of the theme system because I didn’t need 26 or so different themes to choose from. All I needed was one. After I hacked Shifter to death, I cut myself out of future updates or at least, made it a pain for me to experience new features as they were released. Although Shifter allowed me to place widgets almost anywhere within the theme, it was filled with code that I didn’t need which I believe was one of the reasons for the slower loading times of the site.

The problem lies in the fact that the Shifter theme system is coded in such a way that it has to support a myriad of configurations. That is quite a lot of files with quite a lot of code. Although I still believe Shifter is in a class of its own in terms of themes and support for widgets, make sure you take a good look around before plunking down the cash. The bottom line is, Shifter without core modifications provides a wealth of layouts/configurations that just about any other WordPress theme can’t match. If you are looking for a theme where Widgets are your primary means of displaying content and are looking for versatility, you would probably be pretty happy with Shifter.
Despite your proseltizing I never tried Shifter, but even when I have built similar things myself I have always found that the added complexity never quite gives me what I want, but a basic theme that I hack up does. Odd.
@Andrew - Well, I realize some folks would take this as me advertising Shifter again but I didn’t link to them. Also, this is how I really feel about the Shifter theme. The added complexity gave me a headache. Now, here is something worth thinking about. I would love it if Shifter provided all of that cool functionality with widgets but confined it all to one theme. That way, managing the theme would be so much easier.
Hi Jeffro, I was actually looking at Shifter a few months ago then I started reading more about child themes, WordPress 2.7, Ian Stewart’s ThemeShaper, etc…
For people like me who are more designer than coder, this whole concept will change the way we create blogs and probably save a ton of time and errors in the process. I love how this concept (child themes) is evolving!
Yeah, not only will you be able to define the css to replace the parent theme’s css, but you’ll be able to create files that will override the parents files. Don’t like the home.php, replace it with your own.
This should allow you to customize your theme without actually having to hack up the original theme’s files.
I should note that the above hasn’t been fully tested, so if you really want that to happen, you’ll need to test it and submit a bug report if it doesn’t work that way.
This is one of the reasons my Options theme is actually my LEAST favorite theme. It gets too advanced for the average user, and there’s a ton of stuff that most users will never need.
In the end, users always end up editing the core code in some way, which is why I think WordPress 2.7 and child themes will forever change the way we think about using WordPress themes.
My future themes will focus more on a solid base design and well-written code more than theme options.
Themes like Shifter are definitely great for those users that won’t change the code, but from my experience, those users are few and far between.
@marti garaughty - I am still trying to wrap my head around the child themes concept but I believe I am making progress. It sounds promising and Ian looks like he will be in a position to really lead the charge in terms of child themes.
@Jacob Santos - So here is what I don’t understand. Why would you customize a theme that doesn’t hack up the original theme when you can just hack up the original theme to begin with?
@Justin Tadlock - I did try and use Options when I went for a redesign of this site but even I had a hard time trying to figure it out. It provided a ton of functionality but I didn’t want to spend the time figuring everything out. It is weird because I’ve always spoken highly of theme authors providing a ton of options for themes but in this case, I was overwhelmed.
I don’t edit any core WordPress code, ever. I stick to editing themes.
It sounds to me like this whole child theme idea will provide a way for you and other theme authors to create a well written base for the theme and then, release child themes instead of completely independent themes. I think it would be pretty cool for a theme author to release a cool theme but then, allow users to create child themes that are then sent back to the theme author, reviewed, and then put up for download as another flavor of the original theme.
How would updating work? Would you simply release an update for the theme base that child theme authors/users could then decide on whether to incorporate new functionality into their child theme?
I didn’t mean edit core WordPress code. I was talking about editing core theme code.
Updating child themes is simple. Just upload the parent theme and everything should work fine. Since users wouldn’t be editing the core [theme] code, updates wouldn’t break their child theme. This might be bug fixes that would carry straight over to the child theme. Or, it could be extra features that might work out of the box with an older child theme. Or, if it didn’t work, a short tutorial on how to implement a new feature would be easy to write up.
The best thing to do is start out with a solid base. I’ve been working on my “Hybrid” theme (theme currently running ThemeHybrid.com with the child theme concept) for around two months. It’s all about putting in the time researching and building the code to accommodate a multitude of different designs.
By the way, if you every do want to give Options another go, it’s come a long way since I think you were trying it out (much less complex).
Think of a plugin that has a CSS file in it. Like say, WP-PageNavi, where it’s got all those extra styles. Let’s say you want to change the colors, padding and margins and make a totally custom style. You go into the plugin CSS files and settings and make your changes, hacking up the code. Pretty easy stuff.
But! 2 months later an update to WP-PageNavi comes out. A serious one. You can upgrade your plugin—but then you’ll lose all your custom styling and settings.
Now imagine that was a theme.
I don’t have the WP Magazine Theme but just from a quick glance you probably could have done all your edits* in a Child Theme. It’s no extra work. No extra complexity (unless you want to do something complex). It works right now. And if there’s ever an update to the theme, you can upgrade without any worry.
*I’m not sure about the search in the header, if you put that in there or not. Regardless, in 2.7 you’d just write a new header.php file in your Child Theme. Right now, you could use the WordPreciousss plugin to do the same thing.
Oh, and read this tutorial on how to make a WordPress Child Theme. It’s pretty straightforward.
@Ian Stewart - Now that is an explanation that makes sense to me and now I can see why child themes would be much better to work with rather than the source theme. So thanks for that Ian.
P.S. Looks like this child theme movement is under way and I do believe you got the ball rolling. I’ve been seeing the term ‘Child Theme’ popping up all over the place recently and if Justin Tadlock is on board, it must be pretty good!