Stop People From Stealing Your Work: Implement WordPress Plugin/Theme Licensing



Imagine you are working on your product one evening and somehow you find there’s a website on the other side of the world sharing a free copy of your product.

This is a dreaded nightmare for many entrepreneurs selling software online, whether it be WordPress plugins, themes, a desktop applications or video games.

WordPress plugins and themes usually ship as downloadable zip files.

So what prevents people from simply downloading a free copy without paying you?

As an entrepreneur, you want people to pay for your plugin or theme. Since you intend for this to be your livelihood, you don’t just want this.

You need it.

So how do you go about keeping your software from getting pirated?

If you’re selling WordPress themes or plugins, you’ll first need to understand how WordPress licensing works. If you’re not, you can skip to the Piracy Concerns section.

GNU General Public License (GPL)

Most major theme and plugin distributors license under the GPL. It’s common practice in the industry. So most likely, you’ll be licensing under the GPL as well.

Since the WordPress community is built on the spirit of openness and sharing, it is no surprise the GPL stipulates the same openness.

At it’s core, the GPL is based on the premise of freedom.

Think freedom of rights vs. free in the context of not paying.

There are free themes and plugins available. but “free” in the context of WordPress’ GPL doesn’t mean you can’t charge for your software.

What it really means is the user’s freedom to run, modify and distribute the software or any modifications of that software.

So even if you charge $50 for a theme, the user still has the freedom to use, modify and redistribute as they wish.

The GPL doesn’t say everything needs to be zero-cost, just that it does not restrict your freedom in how you use it.

Therefore, you may charge to access the product, or create membership sites, or give the theme for free and charge for support.

So what you need to understand is that if you are licensing under GNU GPL, it is legal to redistribute the theme without your permission.

If someone gets a copy of your product, then gives it away for free, there is nothing you can do about it, unless he claims he created the work.

Piracy Concerns

Given the fact that I just said the license stipulates that the user is allowed to redistribute your product and you can’t do anything about it, you’re probably now concerned about how you’re going to make any money at all.

The truth of the matter is, piracy is really a negligible concern for most entrepreneurs, unless, you’re the size of Microsoft.

But even then, Bill Gates’ stance on piracy is not so concerned about having their software pirated, and is more focused on building out a great product to which people want to steal it. Which in turn increases their market share.

Bill Gates was quoted during a speech in 1988 saying,

“Although about 3 million computers get sold every year in China, people don’t pay for the software. Someday they will, though. As long as they are going to steal it, we want them to steal ours. They’ll get sort of addicted, and then we’ll somehow figure out how to collect sometime in the next decade.”

Microsoft will even go to lengths as to make deals with companies found pirating their software, allowing them to convert pirated sales to legitimate sales.

So, they want their software stolen?

In a sense, yes. The fact is, hackers will exist no matter what. And since they’re competing for market share and dominance in the industry, they want that pirated version to be theirs.

While we did say that piracy is not a huge concern for you, as a business owner you still want to take precautions.

Nothing is hack proof so there’s no point wasting precious engineering resources to develop something that will ensure 100% anti-piracy.

Piracy is mostly a social problem, not a technical one.

Instead, you want to implement something that minimizes the damage, which we’ll show you how to do below.

Your goal is to dissuade people from making your product available to a large number of people online.

You want to discourage them by making it harder for them to share your product freely.

For example, providing separate trial and full versions limits the full versions to only people who have purchased the product.

Also, having license keys will dissuade people from sharing their personal keys over the internet.

And finally, having a subscription model, where you provide upgrades to paying customers, ensures that only paid members are getting the latest copy.

What to do when your product is pirated

If you find your plugin or theme posted for free online, the best course of action for you is to keep on working on your product and making it better.

Then as soon as you can, release a newer updated version.

That way the pirated version may be version 1.0 while you’ve already released version 3.12.

This deters people from using the old, outdated version even if it’s free.

Who wants to use an older version when there’s a better version available?

Particularly when there are new bug fixes. With WordPress constantly releasing new updates, old versions may not be compatible and may not work as well.

In addition, most legitimate customers who pay their hard earned money for a product don’t upload it for the benefit of random strangers or thieves around the world.

That’s why supplying the source code with each purchase is really not an issue.

Sure, some people may look at the source code, but that rarely matters because you’re hard at work releasing new and better versions.

Different Ways to Protect Your Product

Let’s first look at a few different ways you can protect your product.

Subscription Model
With a subscription model, piracy becomes almost irrelevant.

When you control the distribution of your content, you significantly reduce piracy.

The software can become almost unusable without updated code.

Particularly, if you are selling WordPress themes and plugins. You can keep your software updated, either to keep it working with new WordPress updates or adding features.

You can then version them, and have these versions distributed behind a paid wall.

For example, only allowing your paid customers to download once they’ve logged in and have been verified as a paid customer.

Separate trial and full versions
If you are selling plugins with a trial and paid version, you can have separate versions of the plugin.

It’s impossible to hack a trial version to provide a full version if the source code for the full version is not there at all.

Have a separate file for the trial version from the paid version.

We do this with our themes. We have a free version and a paid version that are separate files and different source code.

License key
You can also manage activation of your software with license keys.

Paying customers will get sent a license key which they will need to use to activate the plugin or theme.

You manage the creation of the license keys on your servers, and the license keys are authenticated through your servers.

This way you can activate or deactivate keys as you wish remotely.

Let’s take a look at how License Keys works

With a license manager, a customer buys your software product, for example, a plugin, and receives the zip file containing the source code.

Once they install the plugin onto their WordPress website, they will need to activate it with the license key for it to work.

The license key gets entered and is then checked by your license server, which will contain a list of valid licenses.

Once a valid license is found, you will then grant full access to the functionality of the plugin.

How to implement WordPress plugin/theme licensing

With WPDigiPro, it’s incredibly easy to create and manage license keys for any software product, whether you’re selling a WordPress plugin, theme, desktop app, or game.

WPDigiPro is a WordPress license manager that makes it easy to create and manage license keys.

It’s simply a plugin, which you easily download and activate on your very own WordPress website.

Get a copy of WPDigiPro here.

It allows you to create and manage license keys right from your admin dashboard.

It will automatically create license keys and sends them out to your verified buyers. You can also deactivate keys from your admin panel as well.

Get a copy of WPDigiPro here.

From your admin dashboard, you can add a product and set the settings, such as the number of domains the key can be used for and the length of time the license is valid for, etc.

You can then send users who purchase the product, a valid license key.

Automated emails sending out the license key can be automatically created in WPDigiPro.

In addition, WPDigiPro provides users with login credentials and a user dashboard where they can get access to their products, and license keys.

Your product will prompt them to enter a valid license key, which then gives them access to the full functionality of the plugin. We may write another post on this in the future.

Once the user enters a valid key, they’ll see something the screenshot below, and will have access to all functionalities of the plugin which they paid for.