This is an example of a WordPress plugin that utilizes Keygen for licensing. For this example, each license key will be locked to a specific domain (also referred to as "node-locked" licensing).
This example plugin is not 100% production-ready, but it should get you 90% of the way there. You may need to add additional error handling, machine activation (client-side or server-side), etc.
You will need to set up a local WordPress installation on localhost
in
order for the license to be valid. Simply move the example-plugin.php
script into the wp-content/plugins
folder and activate the plugin.
Navigate to the plugin's settings menu. You can use the license key "wp-localhost-key
"
while on localhost
to test a valid license. If you're not on localhost
, an
error will be shown.
Note: This example assumes that you will create a new machine resource upon license creation, e.g. you require the customer to input the domain(s) they will be using your plugin on during checkout. Otherwise, you will need to set up client-side machine activation, or host your own license activation server.
If you want to utilize your own Keygen account (this example plugin uses our
demo
account), then visit your dashboard
and create a new policy with the following attributes:
{
requireFingerprintScope: true,
maxMachines: 1,
concurrent: false,
floating: false,
protected: true,
strict: true
}
You can leave all other attributes to their defaults, but feel free to
modify them if needed for your particular licensing model, e.g. change
the maxMachines
limit, set it to floating = true
, etc.
Reach out at support@keygen.sh if you have any questions or concerns!