In this session, Ryan Imel of WPCandy talks briefly about how WordPress themes have changed over the past several years, including free themes, premium themes, default themes, theme frameworks and of course, theme options!
As you might know I’m obsessed with theme options, and I even started a blog about them, which was supposed to showcase both great and “not so great” theme options panels. I had quite a hard time finding great theme options pages, as opposed to ones I didn’t like, so as Ryan mentioned in his talk, people often refer to that blog as the “Theme Options Porn” blog.
However, I have a feeling that the Theme Customizer introduced in WordPress 3.4, might totally change things, and render my blog useless (which I don’t mind!) I’m stumbling across more and more themes that “squeeze” their options into the customizer, which is great. And there’s a great tutorial by Otto showing you how to do that. Thanks Otto!
Obviously most of the themes are still doing both, Theme Options and Customizer Options, but I don’t think that’ll last for long and here’s why. There’s never been an easier API to create powerful, core-like and future-proof controls, such as color pickers, image uploaders, ond others. Once you figure it out, you’ll see that it’s easier (and much less code) to write options for the Customizer, and you’ll never want to go back.
I must admit I’m scared of a theme like Weaver, putting all of its options into the Customizer, but then again, the Customizer has already got most of the controls you’d ever use for theme options, as well as options sectioning out of the box! It’ll be much more difficult to create a non-WordPress (or what Ryan calls the “Russian Doll Syndrome”) experience. Having said that, one might think that the Customizer is restricting WordPress theme developers, by setting rules to what you can do, and what you can’t do, as well as a pre-defined user interface, which you can’t really change (not supposed to at least).
I’d say that the Customizer is not only guiding theme developers to create better, usable theme settings, but also empowering them to do so. Besides, you can always extend a Customizer control and customize the hell out of it, though you probably shouldn’t :)
Anyway, that’s just my thinking about the state future of WordPress themes. Let’s hope Ryan gives a similar talk next year, and see how things change. What do you think about theme options pages? What do you think will change over the next year? Do you see huge potential in the Theme Customizer like I do? Please, share your thoughts by posting a comment. Thanks!
Is there a theme out there that currently uses the new Customizer settings in a nice fashion?
Great question Remkus! Yes, Twenty Eleven does. It places its color scheme, layout and link color settings into the Customizer. It also sets the site title and site description settings transport to postMessage, creating a better user experience. See
twentyeleven_customize_register
in inc/theme-options.php for more details.I’m aware of Twenty Eleven, but was wondering if there was one a bit more elaborate out there that you’ve seen already.
Not really one’s I’m proud of, no, but if you would just like a couple of (not necessarily good) implementation examples, see Suffusion, Portfolio Press, a bunch of Hybrid-based themes and some forks of the _s starter theme. I’m also certain that the commercial themes market can show some examples too :)
The Digital Store them written by Matt Varone uses it really well: http://easydigitaldownloads.com/theme/digital-store/
I used Customizer a little bit in Path theme. Most of the code is from Otto, Twenty Eleven or Justin Tadlock. It’s pretty cool even if I have used theme settings page also. Basically there is just Footer text and global layout added, all the other features come from core.
Sweet! I think the Hybrid framework has some Customizer settings predefined, which you can easily add to. Well done!
Yep, Footer text is from Hybrid Core.
Tons of potential, especially as the idea of a live preview makes its way to more than themes (post editing?!). However, there is something that I think is a little bit of a deal killer right at this moment, at least in terms of killing off separate screens for options – the customizer is completely inaccessible via keyboard, which makes themes that utilize the customizer-only unusable by those who do not/cannot use a mouse.
Didn’t come comment with this intention, but I sure would love somebody to work on it :D http://core.trac.wordpress.org/ticket/21283
Hey Helen, thanks for stopping by to comment! You’re absolutely right about Customizer’s accessibility, and I think it’s important to address that issue in the coming releases. Even more important, than building separate screens for theme options, which we don’t do with accessibility in mind anyway, especially those with drag and drop interfaces, right? ;)
Hope you’re having a great Thursday!
I think it will take some time before more themes start to utilize this. A lot of authors don’t really understand the settings API and rely on one of the “options frameworks” out there. I’m sure somebody will release a good customizer framework for authors to use in the near future.
Hey there Chris, good to see you around :) I think the Customizer is easy enough to use, and easy enough to extend, and a “framework” on top of that would only complicate things. I do understand many concerns with the Settings API, because it’s not as easy to get started, but then again, it’s easy enough to create reusable controls and perhaps share them with others.
The complexity of the Settings API (and add_menu_page in general) is what I think will guide people towards using the Customizer instead. Options frameworks will continue to live for plugin developers, though I think that if you’re capable of developing a WordPress plugin, using the Settings API should be peanuts :)
Thanks for stopping by to comment!
Very good points. Hopefully this article will help get the word out to theme authors.
Thanks Chris! Have a great day :)