Plugin Directory

Test out the new Plugin Directory and let us know what you think.
!This plugin hasn’t been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Sell My Plugin

This plugin allows you to host your own plugins on your wordpress installation.

How do I test the PayPal features?

If this is the paid version: You must sign up for a sandbox account with PayPal. Enter your credentials in Sell My Plugin Settings. Then navigate to http://yourdomain.com/extend/plugins and select your plugin. If you have set a price on the plugin page, you must click on the purchase button.

How do I provide updates for the plugins I sell with this Plugin?

If this is the paid version: This is done automatically with a little setup from you. When uploading a plugin using Sell My Plugin, this is automatically added to the plugin file, and the update script is included in a folder plugin-updates/.

# Check for Updates
# Since: 1.0
# Check for Updates on personal server

$update_link = "http://YOUR.DOMAIN.COM/extend/plugins/YOUR-PLUGIN-SLUG/update/?transaction=$key";
$update = new plugin_check_for_updates(
    __FILE__, $slug
# End Check for Updates

As you can see, there is a transaction id required for updates. This only applies to paid plugins. You will also need to capture the transaction id. The user will need to navigate back to their plugin settings page, and paste ?transaction=. You will have to provide a means of capturing this TID.

if (isset($_GET['transaction'])) update_option('YOUR-PLUGIN-SLUG_key', $_GET['transaction']);

Is all of this required for plugins I just want to host and not sell?

Yes and no. You do not need to capture a transaction id if there is no purchase. You do need to however include the update check and file which is automatically added.

I updated the plugin and all of the options were missing. Even worse, none of my plugins work anymore. What gives?

I have run into this issue a few times, however the fix is easy. When the plugin is first installed, a secret folder name is created, and the name saved to your database. This way, the plugin knows where the zips are located. When the options are somehow deleted, the files are still in tact as well as the databases. If this issue becomes a hot topic, I can create a means of doing it from within the plugin, but for now here is the fix.

Using your favorite ftp program or cpanel, navigate to the wp-content/uploads/ folder. Look for the 2 folders with random characters. Browse each of them and find which is empty. Copy the folder name. Delete the folder. Change the name of the folder with the zips to the name that was copied. Tada! Problem solved.

Why is the plugin zip folder random characters?

This is done to prevent hot linking to the plugin zips. For instance. A user knows where the files are located by knowing the folder name. All they would have to do is type in the location of the zip in the address bar, and the download would start. This is why the folder name is hashed to a random name so that the possibility of stumbling onto the plugin is less likely.

What happens when I select PayPal Sandbox and vice versa?

  • When PayPal Sandbox is selected: The credentials must be for sandbox. The address your payment system uses changes to allow for testing. PayPal Sandbox notices are enabled to let you and others know this is only for testing. The downloads increment, but only for sandbox downloads, it does not count towards real downloads. Transactions are saved, but indicating they are sandbox transactions. They do not show when not using sandbox.
  • When PayPal Sandbox is turned off: The credentials are your real credentials. The payment gateway address is the real one. All Sandbox notices are turned off. The real downloads increment. Transactions are saved without the Sandbox flag.

Requires: 3.3 or higher
Compatible up to: 3.5.2
Last Updated: 4 years ago
Active Installs: Less than 10


5 out of 5 stars


Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.