Proprietary WordPress Development & What It Means for Average Users

7 Comments

The average WordPress user is someone who tends to buy WordPress themes and plugins as turn key solutions for their website development needs. Of course they will have to configure both and they may make some customizations, but they cannot write (or understand) complex code.

Or any at all, for that matter, depending on where they fall on the technical spectrum under “developer”. Basically, anything more technically advanced than dropping in some code snippets or making basic CSS customizations is not possible without outside help.

This is the customer base most WordPress theme and plugin shops are targeting when they create a product. Ironically though, this is the very group who is most likely to be ignorant or misinformed about WordPress development best practices that could negatively impact their project or business.

Such is the case with the practice of proprietary WordPress development.

What is Proprietary WordPress Development?

In a nutshell, proprietary WordPress development is any practice that a) restricts the freedom of a WordPress theme or plugin’s end user beyond the existing limitations of WordPress’ GPL license; or b) uses non-portable code to lock users into a single product or product ecosystem’s continued use.

Types of Proprietary WordPress Development (& What They Mean for You)

If that sounds a little confusing, don’t worry. The sections below will focus on explaining what exactly non-GPL compliant code and non-portable code are and how they can negatively affect end users.

Non-GPL Compliant Code

Before you can understand what non-GPL compliant code is, it’s probably a good idea to understand the main points of the GPL license to begin with. So, what is the GPL license and how does it apply to WordPress, WordPress themes, and WordPress plugins?

GPL stands for General Public License. Any software (WordPress) or derivative products (such as themes and plugins) released under this license provides its users with the following freedoms:

  • The freedom to run the software for any purpose
  • The freedom to study how the software works and make any desired changes to it
  • The freedom to redistribute the software
  • The freedom to distribute copies of modified versions of the software

It is important to note that there is nothing in this license that prohibits charging for the software–which is how the entire WordPress theme and plugin market is able to exist.

WordPress itself is free of charge by choice; as are the plugins and themes offered through the official WordPress.org repository. Premium WordPress themes and plugins are required to honor the freedoms of the GPL license–which can make it hard (but not illegal) to charge for a freely distributed product–and so tend to charge for easy file access, support, and updates.

(If you’re hazy on how exactly that works then I would recommend reading Chris Lema’s article called What Are You Paying for When You Buy GPL Themes and Plugins?)

Ok, so now that you know what the GPL license is and how it applies to WordPress themes and plugins, how can non-GPL compliant code affect you? And what constitutes non-GPL compliant code in the first place?

Non-GPL compliant code would be anything that restricts the four freedoms above. Code that is compressed or encoded to avoid being read would be the biggest offender here as it would stop you (or anyone you hire) from studying the code, making changes to it, and freely distributing it in any meaningful way.

Thankfully, nearly every single premium WordPress theme shop is 100% GPL compliant. The only major hold-out is Themeforest which offers both 100% GPL and Split GPL licenses. The split license is there to cover elements such as code or code libraries not directly tied to WordPress core functions that might be included in a WordPress theme but are either already licensed under something else or the creators want to retain ownership.

In the case of split GPL licenses you will want to review the restrictions per theme or plugin to be sure you are not prohibited from using the software as you are intending to. In my opinion though, this is rare enough now that it no longer constitutes the biggest problem posed to end users by the practice of proprietary WordPress development. That’s where our next type comes in.

Non-Portable Code

Finally we come to what I see as the biggest problem in the WordPress community in terms of proprietary development: non-portable code. This is when a plugin or theme is designed, either intentionally or unintentionally, to lock a user into the continued use of a single product or product ecosystem. There are three main perpetrators of this: non-portable shortcodes, non-portable themes, and non-portable plugins.

Shortcodes Dependent on Themes

Shortcodes that come with a theme, and which are not dependent on a separate plugin, cannot be ported to a new theme in the future. This practice of packaging shortcodes as part of the theme itself traps end users into either sticking with the theme they have or go through the tedious and time consuming process of removing/replacing all of the shortcodes used in their content. Sometimes, there are no alternate shortcodes available.

Theme Functions and Templates

Ideally, a theme should come with all of its major functionality in the form of a plugin or bundle of plugins. This includes custom templates that once used over and over again will need to either be ported to a new theme or reconstructed by a new developer.

Take a theme that comes with a built in page builder for instance–like Elegant Theme’s Divi. Once you use that theme to create page after page with its custom page builder you cannot switch themes with anything approaching ease. This is one major reason they recently announced they are converting their builder into a theme independent plugin.

Plugins Dependent on Theme Styles

Some plugins, such as the Aesop Story Engine, are dependent on complimentary theme styles to make the plugin work as intended. Right off the bat it means that you need to purchase a theme by the plugin’s author for it to work properly and then you are basically stuck within that family of themes once you’ve used the plugin to create your content. This was one of the reasons the team here at Cohhe recently released the Longform storytelling theme for free. To make a great free plugin actually free to use.

The Aesop Story Engine is far from the only free (or premium) plugin to use this method of directing users to premium products or product families, just one that stood out to me after the release of Longform. In general, these kind of plugins can be hard to spot without acquiring the plugin and testing it yourself. Your best bet is to read as many reviews and articles about your plugin choices as possible before choosing those you will be absolutely dependent on–and then testing them extensively before making any final decisions.

So, What Should the Average WordPress User Do When They Spot Proprietary WordPress Development Practices?

Ideally, avoid it. Non-GPL compliant code is pretty rare now (among trusted and established WordPress theme/plugin creators) and so less likely to cause you problems. Or even come across your radar.

Non-portable code, on the other hand, while frowned upon, is not illegal or even against WordPress licensing. It is against the recommended WordPress development best practices, but there are almost always going to be developers out there who see non-portable code as an easy way to retain customers.

In those cases, you’ll need to follow my advice above and simply be on the lookout for it. Oh, and again, test everything.

If for some reason you cannot avoid using a theme or plugin that practices proprietary WordPress development, there are a few things I’d recommend:

1. Avoid using the features that cannot be ported, even if you have to download a plugin that “duplicates” features

2. If you must buy into a particular product or product family, choose wisely. Pick a theme/plugin shop with an impeccable reputation and enough success to guarantee that they will be around for a while

3. Encourage those developers to bring their products in closer alignment with the recommended WordPress development best practices.

In cases such as the Elegant Themes Divi Builder mentioned above, it seems that they took note of this complaint from their user base and made a decision to align their development practices with the overwhelming consensus of the WordPress community.

As a result, I wouldn’t be surprised to see their customer base grow significantly in 2015.

Have you had any negative experiences as a result of proprietary WordPress development? If so, it would be a great resource for the community here if you took a moment to share your story with us in the comments below.

Newsletter

We never spam. Subscribe to receive inspiration, news, and ideas in your inbox.

 

Nathan is a professional writer and digital publisher. He's been using and writing about WordPress since 2010 and enjoys supplying useful WordPress news, reviews, tips, tricks, and tutorials. You can connect with him at his personal website or on facebook and twitter.

 

Our Themes

Zap

Zap is a premium business theme with an amazing set of unique features like before/after slider, team profile, testimonials, and…
This is a premium WordPress blogging theme that is well suited for all kinds of blogs. Whether it is a travel…

Guide to Getting Started with WordPress

Twelve free easy-to-follow blog posts covering all the essentials every WordPress user needs to know.

Cohhe WordPress tracks

Get news by email

We never spam. Subscribe to receive inspiration, news, and ideas in your inbox.

More from our blog

Top 20+ WordPress Music Themes For Musicians

WordPress is the most popular online platform for building websites. It is…
Continue reading

20+ Best WordPress Directory Themes

Are you looking to create a directory for a car dealership, real…
Continue reading

WordPress Popup plugin

Popups is a great tool for marketers but you have to be…
Continue reading

Leave a Comment

7 Comments
  1. Reply

    Do any of these themes work with IssueM? IssueM says it works with other themes and it does, but it’s pretty barebones in appeal and elegant themes doesn’t seem to hook into custom post types.

    • Reply

      Hey Marcus,

      I’m not sure if the themes mentioned work with that particular plugin. Since it is free though I’d suggest testing it with the theme you have and seeing. If the theme is premium and you’re not sure if you want to use it without IssueM, I’d just make sure that the theme author provides a return policy. For instance, I know elegant themes has a 30 day money back guarantee.

      Best,

      Nathan

  2. Reply

    “Some plugins, such as the Aesop Story Engine, are dependent on complimentary theme styles to make the plugin work as intended.”

    This is completely incorrect by all measures. Aesop Story Engine CSS has been theme independent since July of last yea.

    ** Update 7.31.14 ** Aesop Story Engine 1.0.9 now features full theme compatibility with a simple code snippet that will load styles based on the components that you decide. While a dedicated theme is required to run components full-width, this will at least load all of the additional styles to give a basic design. Simply remove the component that you do not want to load additional styles for.

    Would love it if you corrected your article.

    • Reply

      ““Some plugins, such as the Aesop Story Engine, are dependent on complimentary theme styles to make the plugin work as intended.”

      This is completely incorrect by all measures. Aesop Story Engine CSS has been theme independent since July of last yea.”

      Hey Nick, thanks for chiming into the discussion here. I’m sorry you feel I’ve misrepresented the Aesop Story Engine. Of course that is not my goal and my statements in the article are simply a result of my own findings when testing the plugin for myself.

      I used Aesop and the code snippet provided to create some sample content with Canvas by WooThemes and I believe Twenty Twelve. I found that some of the components displayed beautifully while others had styling issues that prevented them from displaying properly with the post or page.

      Then there is the larger issue of the full-width components. I understand why they require a dedicated theme to display as they are intended to. I don’t think that is a fault of the plugin per se, just that it (combined with the other styling issues I mentioned) disqualify it from being considered a truly theme independent plugin.

      In the context of this post, this means that if the end user wants to use the plugin as it is intended to function (in its entirety) they cannot use just any theme. They will need to download or purchase a theme built specifically for use with the Aesop Story Engine.

      Or, at least, that has been my experience so far. I would be happy to do some more tests and document them in a new post so that I can share the results with you. If I’m misunderstanding something then perhaps you can help set me straight. I will of course make any necessary changes to this article as a result of those tests and your input.

      • Reply

        @Nathan,

        > I would be happy to do some more tests and document
        > them in a new post so that I can share the results with
        > you.

        That sounds like a nice idea.

        I had my developer try to use ASE with Cohhe’s Sky theme (via a child theme), but had the problems you mentioned and it seemed like a real hassle to do the work required so that the ASE elements would look their best.

        And we were worried about ongoing maintenance as ASE updated in the future. So, we gave up and decided to use Longform instead.

  3. Reply

    Hi Nathan, thanks for this excellent explanation. I’ll probably need to read it again to fully wrap my head around it. The Aesop Story Engine certainly looks like a nice set of tools for long-form content, which my site will specialize in, but now I’m afraid to invest in it for the reasons you’ve outlined. Would be nice if Cohhe could make all of their themes compatible. We’re in the process of building a site with Sky Directory theme.