Link to home
Start Free TrialLog in
Avatar of strags

asked on

How to distribute 15 days free trial version of my wordpress plugin?

I'm currently selling a wordpress plugin and now I've decided to give away 15 days trial version of this plugin.

I've created everything which will control the 15 days limitation. The only problem I have is that how can I encrypt the code so that nobody messes with it.

Currently I'm using simple code obfuscation which can be easily decrypted by anyone having good php knowledge.

I want to use more secure encryption like from zend, ioncube etc.. but the problem is that they need loader to be installed in their webhost server.

Since, most of the wordpress users  have shared hosting and they are not that technically good, I think it's not that good option to make them load the loader.

What's the solution for securely encrypting my commercial wordpress plugin?
Avatar of Ray Paseur
Ray Paseur
Flag of United States of America image

I do not know of any good solution for this problem, given that the context is WordPress.  It kind of goes against the nature of WP (free, open, community-sourced code) to sell a plug-in.  Maybe people make money this way, but it seems to me that most plug-ins are released into the wild through sites like

But that said, here is what I might do.  Create a demonstration of the plug-in at work on your site.  Make it so the client can manipulate it to demonstrate its functionality (Some sites that do this sort of thing automatically reset everything to ground periodically, just to be safe).  The clients can try the plugin for free and see how it works, then if they sense a good value proposition they can buy it.

Regarding this: code obfuscation which can be easily decrypted by anyone having good php knowledge... I don't know how much your plug-in costs or whether there is a lot of code involved, but my sense is that I would never waste my time reverse-engineering or decoding a functional element.  I would just buy it and use it, the way I use Photoshop instead of trying to hack a solution from GIMP.  Maybe Chinese hackers would do that?  Or maybe they would just build an equivalent plug-in?  You can't prevent everything.

Best of luck with your project, ~Ray
Avatar of strags


Thanks for your effort Ray, But this did not help me to solve my problem. There are commercial plugins as well.

We have also a demo blog where customers can check the demo. But this time i want to distribute the script as a trial version. So, I need a way to encrypt them before I distribute. The problem I am having now is with the encryption of php script.

If I encrypt the script in byte code then it needs a loader to decrypt and run on the server which will be an extra burden to the customer which i don't want it to happen. One another way I found is to obfuscate and make it difficult to read. So I need a way to obfuscate the script that will make my scripts very very difficult to read.

Avatar of Jason C. Levine
I tend to agree with Ray but for different reasons.  In order to do what you want they way you describe it above, you need a loader or you need to change WordPress itself.  The former has technical issues and latter will go against the WordPress license.

I have not yet seen a plugin for WordPress that expires like this.  What I have seen are plugins where payment is required upfront and you connect back to the selling site for authorization to use the plugin. Both Formidable Pro and Magic Members does this.  These plugins offer a 60 or 90 period from the date of purchase where you can ask for a refund and they deauthorize the plugin remotely.

So you can try that model (install plugin / connect for authorization / deauthorize if no payment in 15 days).

Avatar of jrm213jrm213
Flag of United States of America image

Link to home
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of strags


Thanks for your help
Avatar of strags


hello jrm213jrm213,

can you tell me a good way/method to encrypt the code. I cannot use loader to decrypt.