Never Lock Users into Your WordPress Themes

If you’re reading this, you’re probably either making money developing WordPress themes, making someone happy by developing themes or working on making one of those two happen. Whatever it is it’s awesome, but are you thinking about the other side? What about people who want to buy a WordPress theme, use it to power their website and then someday find a new theme and want to make the switch. As WordPress theme developers who develop for a broad audience we should be honest to ourselves – a theme buyer is not going to treat our public themes the same way clients would treat themes you built exclusively for them. So, if you’re that theme buyer, you should read this, too

Of course, everyone deserves a top-notch product, but a person that spends equal amount of money on his website design and development as he does on his hosting and domain name expenses should be expected to treat the theme you designed and developed the same way he treats his hosting company – whenever there’s a better deal out there, he will at least consider moving their site.

What exactly am I talking about? Anything that will make your buyers’ decision to move from your theme to another one regret he ever used your theme in the first place. There’s many ways you can make this happen but here are two most common ones.

1. Shortcodes, lots of fancy schmancy shortcodes

Trying to move away from a theme that uses a lot of shortcode is like waking up next to a girl with fake eyelashes, fake hair, fake nails, fake-anything (that you didn’t know were fake!). If you’re a girl reading this, list begins and ends with fake hair, I guess (ladies?). When she wakes up in the morning and goes to the bathroom, you will be laying in the room, alone, with a bunch of fake extensions, trying to answer these two questions: 1) What on Earth is this? and 2) Why does she wear all this, there’s nothing wrong with her without it? In WordPress shortcode world situation I described would look like this:

[fake eyelashes]$9.99 purchase[/fake eyelashes]
[fake hair]$49.99 purchase[/fake hair]
[fake nails]$19.99 purchase[/fake nails]

That’s what a post in a WordPress powered website will look like once the admin switches to another theme that doesn’t support exactly the same shortcodes. You don’t want to force your users into dealing with that mess just like you don’t want to wake up next to all those fake objects, do you? Then, unless you’re 100% certain they will be using your theme till the end of time, don’t do it. If you do and your user decides to try another theme, well, remember those two questions?

An alternative to this would be to either teach your customers how to do some basic HTML editing, or extend TinyMCE editor by adding buttons that will insert custom HTML into post editor, so rather than:

[cool_button_shortcode]Learn about WordPress themes[/cool_button_shortcode]

If they switch to another theme your cool button would look like this:

Learn about WordPress themes

Once your customer replaces your theme with another one, all that remains is a link and that causes no harm whatsoever.

I’m well aware of the fact that most customers’ opinion on shortcodes is “the more the merrier” but it is your duty to at least try to educate them and show them there is another, better way of doing it. Better for them. Ever checked number of shortcodes in WordPress beautiful default theme (twentyeleven)? ZERO.

For further reading on this check out Dealing with Shortcode Madness by Justin Tadlock.

2. Using custom post types unless they are a necessity

And they almost never are in a public WordPress theme. Let me get this straight, I absolutely love custom post types. If I’m developing a custom theme for a client I’m more likely to use them than not. Why? Because they are a great way of clearly separating the content and a client that’s willing to pay for a custom design is very unlikely to move away from that design and start using a public (free or premium) WordPress theme. If they ever need to make a change to their website it will either be an edit to current theme or another custom theme built from scratch, and in this case developer will be aware of existing custom post types and include them in new theme.

WordPress custom post types in public themes may not be such a great idea

But what if you develop a popular free WordPress theme, or sell one for $35 at ThemeForest and it has “Events” custom post type built-in? Your customer goes on to add dozens, even hundreds of events to her website and then decides she would like to use another theme. She makes the purchase, activates the theme and POOF – the events are gone. Not just from her homepage, but from the dashboard as well. So what are her options? She can either:

  • Hire a developer to edit her new theme so Events are part of it and hate you for having to spend money on a WordPress developer, or
  • Forget about the new theme, go back to your theme and hate you for the money she spent buying a theme she will likely never use and also for not being able to go away from your theme, even though she now hates it.

Either way, whatever you’re selling in the future, she’s probably not buying it. Not only that, but since she has a website, a lot of people are likely to learn about her experience with your theme. It really is like having to surgically re-adjust your spine before buying a new car, from another manufacturer, so you can fit in, at your expense. Not cool.


Let me conclude this semi-rant by saying that unless you’re building your WordPress themes with humans, rather than dollars in mind you’re doing a poor job. Showing off hundreds of different shortcodes will most likely mean more people will use your themes (unfortunately), but every time one of your customers tries to abandon your theme and install a new they will get disappointed, in your theme and in WordPress. Both of those mean one less potential customer, you don’t want that to happen, do you?

Slobodan Manic
I love working with WordPress and doing it the right way. Themes and plugins I develop have a common #1 goal: Keeping it as simple as possible for users to publish their content.
Slobodan Manic

@slobodanmanic

WordPress, productivity, minimalism. CTO at @AlphaBrandMedia and @sejournal
RT @gamerz: How can you be a WordPress expert when you typed “WordPress” as “Wordpress” in your Linkedin profile. - 3 hours ago
Slobodan Manic
Slobodan Manic
Slobodan Manic

Latest posts by Slobodan Manic (see all)

5 thoughts on “Never Lock Users into Your WordPress Themes

  1. Wow. That’s really good advice man. The Premium WordPress Themes market is growing really fast. With a lot of options to choose, customers are getting more and more exigent. Those are some of the things that can make you stand out from the competence.
     

    1.  @Mariano Miguel Thanks for your comment! I guess WordPress theme development is like anything else in life, stick to best practices, use common sense approach whenever possible and you should be good in long run.

      1.  @slobodanmanic Haha yeah :) Thinking about this, I think the best choice is to create a functionality plugin, like Bill Erickson suggests. 

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>