A new decision from WordPress is causing many web developers to groan with disgust. Recently, WordPress announced the decision to streamline all new theme updates through its Theme Customizer API. While its name might sound intimidating, this feature actually makes it easier for the less web-savvy people to add new themes to WordPress’s library.
But what are the effects this has on the more advanced WordPress theme developers? There is one big question on everyone’s minds now; will this decision end up hurting or helping WordPress more in the long run?
Before the WordPress Theme Customizer was added in 2012, web developers were required to create their own admin pages to house their theme options, configurations and styles. This provided web developers with a large degree of flexibility and control over how the theme options were displayed, organized and presented to the site users.
While flexibility and customization can be a good thing for developers it isn’t typically good for the user. The problem for the user comes when they are switching themes or maintaining sites that use different themes; theme administration pages by different developers would be often have very different user interfaces and organization structures.
The Theme Customizer addresses many of the user issues by providing a unified structure and presentation of controls for administration of theme options. Instead of relying totally on the preferences of the theme developer, theme controls are organized into panels and sections.
The upside from the user’s perspective is that they will have a consistent user interface and location for adjusting the options of their theme(s). The upside from the developer’s perspective is they will no longer have to design, build and maintain their custom theme option pages and theme documentation should be a bit easier. I don’t know about every developer, but writing documentation isn’t my favorite thing.
The biggest perceived downside to the forced use of Theme Customizer, from the developer perspective, is the limitations to what controllers are available within the WordPress Customizer API. Currently, there are six controllers for developers to use on the WordPress Codex:
Creates a control that allows users to enter plain text. This is also the parent class for the classes that follow.
Creates a control that allows users to select a color from a color wheel.
Creates a control that allows users to upload media.
Creates a control that allows users to select or upload an image.
Creates a control that allows users to select a new background image.
Creates a control that allows users to select a new header image.
For those developers who feel that they will be strangled by the limited controllers that Theme Customizer offers – here is a bit of friendly advice: take a deeper look inside of the Codex. Once you do, your worries about having limited theme options will disappear as you see that WordPress has given developers a way to create their own custom classes and controllers for this purpose. Take a look at Otto for an older but great tutorial on the foundations of creating custom classes and controllers that work with the Theme Customizer.
With time, I am sure most if not all developers will come to realize the benefits of improved standardization and consistency that Theme Customizer brings. If not for the developer than at least for the theme users. After all, the user’s opinion is what really matters, right? If a site’s layout is not easy for a user to navigate or the theme settings & customization options are all scattered, it’s doubtful that users will keep coming back to that particular theme developer.
There will always be nay-sayers when new features or standards come into play with any popular platform or program, and I will admit that at first I wasn’t too thrilled with WordPress decision to force the use of the Customizer. But once I understood how this would effect me, the developer, I started to look at who this decision was really for – our theme users. And any change that makes their lives and interactions better with our products is ultimately a good one, even if it causes a bit of a headache once made.
To discuss how Fuzzy Duck can help you build a stronger web presence, give us a call today at 952-449-6800 or email us at email@example.com.
Fuzzy Duck Design
307 Manitoba Avenue
Wayzata, MN 55391