How easy will it be for you to switch WordPress themes in the future? Most theme users probably don’t ask themselves this question. Why would you? WordPress lets you switch themes with a few clicks so things should work smoothly. But that’s only the case if your theme was developed following WordPress standards in order to avoid the lock-in effect.
Much has been written for WordPress theme developers on the lock-in effect while hardly anything has been aimed at theme users like you to explain what the lock-in effect is and how to avoid it. I feel this is necessary because there are still many themes built without consideration for your ability to switch in the future.
The Lock-in Effect Explained
A respected member of the WordPress.org plugin and theme review teams summarizes the lock-in effect:
The lock-in problem is when a user is forced to continue using a theme because their data would be lost to them if they switched to another theme. Justin Tadlock
The Purpose of Themes and Plugins
Themes are for presentation. They are supposed to control how your site looks and how content is displayed. Plugins are for functionality and data (such as content and site-specific settings). There should be a thick red line drawn between what themes are for and what plugins are for. The thing is, developers can do whatever they want.
With great power comes great responsibility
Commonly attributed to Spider-Man’s uncle
The bottom line is anything you as the user reasonably expect to keep when you switch themes belongs in a plugin. This includes content from post types, shortcodes and search engine optimization settings, to name a few. Theme developers should be considerate of theme users like you by respecting the distinct purposes of themes and plugins.
I’ll provide contrasting scenarios to explain this by example. Since we sell church WordPress themes here, let’s pretend you’re building a church site.
Worst Case Scenario
Imagine choosing a WordPress Theme with sermons, events, shortcodes, search engine optimization settings, Google Analytics integration and a contact form. The theme claims to make things easy by including all of these features directly in the theme. None of them require a plugin. The theme looks great and the features are really handy. Good deal?
Fast-forward one or two years when your church decides to give the site a new look by switching themes. You do so and, to your horror, find that all your sermons and events are gone, shortcodes are broken everywhere, the contact form has vanished, the SEO settings you perfected have zero effect and Google Analytics is no longer updating statistics.
You have two options, spend hours, days or weeks essentially rebuilding the whole site or take the easy way out and accept the fact that the theme locked you in. That means sticking with the old theme forever.
Best Case Scenario
Now imagine choosing a WordPress theme like Saved that supports the Church Content plugin for sermons, events and other church-related content. It’s also built with consideration for the popular and free Yoast SEO, Contact Form 7 and Google Analytics plugins, should you choose to use them.
After a year or two, your church decides to switch to another theme from us or one of the other theme providers that supports the Church Content plugin. Your site has a new look and your content is intact. This is because content and functionality features come from plugins that remain active even when the theme is switched.
Why the Lock-in Effect Exists
There are free themes from WordPress.org and commercial themes (often called “premium”) from more than three hundred WordPress theme shops and even more individual sellers on theme marketplaces. Free themes undergo rigorous review to make sure submissions follow WordPress development standards and best practices (one of which is not to enter plugin territory).
Commercial themes are not available on WordPress.org so theme sellers have to police themselves. Many have failed at this (including myself with older themes on ThemeForest).
- Some theme developers are unfamiliar with WordPress standards
- Other developers are aware but do not care to follow them
- Marketplaces tend to have lower standards than WordPress.org
- Theme shops have their own standards for better or worse
Things are getting better because of awareness raised by developers like Justin Tadlock but theme users are not out of the woods yet. You need to purposely avoid using WordPress themes that lock you in. There are still themes being made that way today.
How to Avoid the Lock-in Effect
It can be hard to tell how much a WordPress theme contributes to the lock-in effect by reading its details page. The easiest way to know is to ask the provider if their theme includes any of the following content or functionality features directly in the theme instead of supporting a plugin (which is what should be done).
- Post Types (e.g. sermon and event)
- Taxonomies (e.g. sermon topic, event category, etc.)
- Custom Fields (e.g. sermon MP3, location address)
- Shortcodes (used to generate or change the appearance of content)
- SEO Settings (a plugin such as WordPress SEO should be used)
- Contact Form (many contact form plugins are available)
- Google Analytics tracking code (this is plugin territory as well)
I would also suggest using a newer theme. A large portion of older themes (especially those sold on marketplaces) violate the boundary between presentation (themes) and functionality (plugins). In some cases, a plugin is used but that plugin was made for a single theme (ie. to get past a marketplace’s submission guidelines – a technicality). This is a nice thought but in practicality it doesn’t solve the problem. Themes need to support plugins in the WordPress Plugin Directory that other theme authors can leverage.
If you happen to be in the market for a church theme, see our Best Church WordPress Themes article. It lists themes that take advantage of the Church Content plugin which was made to help church theme authors avoid lock-in. And learn about the sermons plugin for WordPress that we’re building to work with any theme. It will end any type of lock in.
There are probably more than 15,000 commercial WordPress themes. Many contribute to the lock-in effect, but not all. Use the ones that don’t. And if you see one that you would have used if it didn’t lock you in, tell the developer how much you regret not being able to give them your money.
Theme developers will ultimately provide what the masses demand, so make some noise and send other theme users to this article to become informed about the lock-in effect. I hope that it will not be too long from now when all new themes can be safely assumed to avoid the lock-in effect.
Have you ever had trouble switching themes because of the lock-in effect? Does the theme you’re using right now lock you in or does it rely on plugins? Please add a comment with your thoughts and experiences.
More on the Lock-in Effect
- Why custom post types belong in plugins by Justin Tadlock
- Dealing with shortcode madness by Justin Tadlock
- The Menace of Theme Creep by David Hayes
- WordPress Theme Development Guidelines
Excellent write up Steven. I just posted a quick overview on not using theme-specific shortcodes for these same reasons but you really cover all the important details. I often get people contacting me for freelance help on configuring a theme like the one you mentioned with custom post types, shortcodes, and the whole 9 yards. They typically go with the theme because it has features they like and the design just happens to be really nice. I explain that future theme changes will break their site and integrating functionality with a theme is bad practice. Most people understand this but some don’t pay much mind to the future and just go with what’s easier right now. Personally, I’d really like to see the development of “functional themes” decrease because I’m a firm believer that using them is a bad idea.
I’m glad you wrote that article. It can’t be said enough until theme developers stop violating clearly written standards and until marketplaces start enforcing those standards (that would have a huge impact).
To my surprise, very few of our users have requested shortcodes (probably under one percent, to whom we recommend plugins). That’s encouraging to me and a stark contrast to the number of requests I received for shortcodes after launching my first church theme on ThemeForest two years ago.
Thanks for commenting.
I think many Themeforest users are looking for that type of thing to begin with. Since so many of the themes are providing that type of stuff, it becomes kind of a standard and themes that don’t offer advanced functionality might be thought of as inferior quality by a lot of users who don’t realize the potential effects of theme-specific functionality.
Anyway, thanks again for such an awesome post. I included a link on my post to help spread the idea.
That makes sense. Marketers tell people what they need. It doesn’t really matter what the feature is or if the customer is knowledgeable about it. If the customer is convinced they need it, they’ll wonder why another product doesn’t have it.
I recall seeing a commercial saying THIS comes with THAT. I thought I must need THAT. I went to another seller of THIS and asked if it came with THAT. They said no and I figured it meant they were lacking so I bought from the other seller. A few months later I discovered that THIS doesn’t actually need to come with THAT. It was a marketing gimmick and I was uninformed.
In the case of shortcodes, it’s worse. It’s not that they are unnecessary. They’re actually destructive to content in the long-term when included in the theme.
Thanks for the link.
Thanks for the well written article. I shared this with a podcast I listen to that did a review of a new theme that seems to have every possible feature in the world baked in-
That wasn’t a podcast about WordPress, so I replied to their episode with this link and a couple others explaining the lock-in problem. Hopefully this kind of information can help users avoid future heartache when they want to change something on their site.
Thanks for helping raise awareness about WordPress development standards among regular users. There’s a lot of misinformation out there about themes and plugins.
Thanks for this. I learned something which is having a lot effect.
But, you know, the matter of sorrow is, when you see people are using themes as a store of all kinds of plugins that they needed & I know you’ll laugh to hear that, to change the style of the site they install plugins, when they can’t even think about changing their themes :P
I want to translate it in my way in my language ‘Bangla’, because I want to let others know about this smart thinking. I hope, you won’t mind & I won’t forget to mention you there for sure. :)
Please feel free to translate the article. Another told me they may translate it into German. The more the merrier!
Thank you for commenting.
I’ll share the link here..
Great article, great points, however, not always necessary.
In my opinion, many, if not most, modern themes have some sort of “lock in effect”, particularly when doing specific sites such as churches. Nothing is wrong with that.
A popular saying of mine is, “you can’t escape doing the work, there are no shortcuts.” Meaning, that you just have to spend the time to input the setup the site properly, input the content, do the SEO, etc. You have to do these things whether or not you are “locked in” on a theme or not. If you’re revamping a site, you SHOULD check on everything, which is also time consuming, and may have to make improvements. In many instances, it really doesn’t matter if you’re using a common/popular plugin, or a post type, or something else.
It really boils down to the specific site and what’s best.
Changing a theme is akin to doing a website all-over again anyway, so it really shouldn’t matter what is used in that sense.
Just my $0.02.
P.S. – I’ll still add this article to my queue to post on Twitter :)
Thank you for sharing your perspective on this.
It’s true there will always be work to be done when switching themes and users should be prepared for that. There is no magical “switch” button. A good result takes planning and effort. The amount of work that needs to be done can be hugely reduced in many cases, though. Here’s a story…
The first church theme I made is called Risen and does not use the Church Theme Content plugin (it didn’t exist yet). It has post types for sermons and other church content baked right into the theme. Many others still violate WordPress standards by doing it this way (even in the name of convenience which in the long run is untrue). Yes, a good website can be made with a theme like this, but…
Fast-forward a couple years. When a user wants to switch from Risen to one of the themes we sell here, we unfortunately have to advise that they will need to re-enter all of their sermons manually. Depending on the amount of content they have on their site, it may or may not be worth the effort.
Fortunately, when someone wants to switch from one of our newer themes to another theme that uses the Church Theme Content plugin (say from Resurrect to Exodus), we are able to point them to this guide and video: https://churchthemes.com/guides/user/maintenance/switching-themes/. They save a lot of time. And this convenience is true of other themes that use the Church Theme Content plugin (not only those made by us).
The is why WordPress development standards prohibit including content functionality in themes: https://make.wordpress.org/themes/handbook/guidelines/plugin-territory/
Can’t you just export your custom posts from the theme you’re replacing, edit the XML file and re-import them after you’ve installed you knew theme?
The same post types, taxonomies and custom fields would have to exist in both themes, with only the names being different, or there will be holes. Even if that near-perfect situation did exist, modifying XML is beyond the expertise of most regular users.
I guess, I won’t be trying that, lol Looks like I’ve been locked-in!
Per your example, I just bought Risen and I really like it! We were mostly locked-in with our other theme so I’ve started the painstaking process of moving content over. I’m still early in the process so any tips on preventing myself from getting locked-in while using a theme that’s easy to get locked-into (specifically Risen, I guess)?
Risen is actually a theme that has post types built in (see my comment above, November 12). It was made before the Church Theme Content plugin. The themes we sell here on churchthemes.com avoid lock-in by using the plugin.
If you want to use Exodus or Resurrect and our Church Theme Content plugin instead, let us know. We’ll set you up with a license.
Wow, thank you for the offer to provide a license for Exodus or Resurrect! I would love to move to Exodus to prevent myself or another one of our editors to inadvertently lock our selves in. That would be awesome, thank you!
You’re welcome, I’ve sent you an email.
I guess this article resonates.
One question pertinent to this topic is…”How often do you update the look and feel of your site?”
I’ve been using the “WP-Church” theme on my church’s website for about 2 years or more now. It’s about time for a change, simply because I feel the site should be visually updated.
Actually, in the last week I realized there seems to be a glitch come up, which is that I’m not able to access the media files to update the feature image. Haven’t gotten to the exact bottom of it, but it’s currently leading towards the theme. I may try to quickly switch to a free theme to see if that makes a difference or not, but we’ll see.
That’s a really good question. I don’t know for sure how churches feel but I feel like a website’s design typically starts to look out of date around three years and that five years with the same design is probably too long. If lock-in isn’t a big issue then switching every three years should be relatively easy and inexpensive.
But they say good design is timeless so I’d say the better the design is to begin with, the longer it retains its appeal. Risen still attracts plenty of churches but I consider it a “classic” look today rather than “modern” when I launched it in 2012. It’s also interesting to see that flat design and parallax effects have been trending for years now.
WP-Church was one of the first church themes I had seen. I’d consider it pretty “classic” today like Risen. That’s fine for churches who want that feeling but maybe not so much for churches looking for something more “today”. It’s nice to see the author of WP-Church has maintained it over the years. Maybe their support can help with the image issue.
Thank you very much for your explanations
Brilliantly written with good, clear examples, thank you. I found you from Google for your post on videos, which again, was very clear. I’ve only been in WP for under 2 years but the logic already told me to try to keep things compartmentalised. Being from a primarily SEO background, I do code to standards and despise seeing developers sticking !important over everything or not understanding the basic concept of heading structure. I’m assuming it’s wise to not even use a built in portfolio or testimonials post type which comes with a theme then? Or can those be exported? Will be reading all your articles when I get some time. Thanks again
Sorry for the late reply. I just found this wrongly marked as spam.
I would avoid a theme that registers its own post type for portfolio items or testimonials. It would probably be a lot more work to make one theme’s post types work with a new theme or plugin than to use a plugin in the first place.
There are a lot of portfolio / gallery and testimonial plugins in the WordPress.org plugin directory. Ideally you’d find a theme that supports one of these plugins so that the styling is a great match.
Thank you so much for posting such an informative article I was little confused to whether use short codes or not on your wordpress blog and wanted to make my mind clear before using anything sloppy on my blog which might cause a terrible headache in future.
Thank you so much
Hi Rohit, I’m glad this article was useful to you.
Shortcodes are fine as long as they come from a plugin and are not baked into the theme itself.
Commenting has been turned off.