
Seamless integration between WooCommerce and the Software License Manager Plugin. Originally adopted from EDD Software License Manager, thanks to flowdee ([email protected]).
https://github.com/shamloo/wc-software-license-manager
<?php /* Plugin Name: License Checker Version: v1.0 Plugin URI: http://wp-master.ir Author: Omid Shamloo Author URI: http://wp-master.ir Description: Sample plugin to show you how you can interact with the software license manager API from your WordPress plugin or theme */ // This is the secret key for API authentication. You configured it in the settings menu of the license manager plugin. define('YOUR_SPECIAL_SECRET_KEY', 'YOUR_SPECIAL_SECRET_KEY'); //Rename this constant name so it is specific to your plugin or theme. // This is the URL where API query request will be sent to. This should be the URL of the site where you have installed the main license manager plugin. Get this value from the integration help page. define('YOUR_LICENSE_SERVER_URL', 'http://wp-master.ir'); //Rename this constant name so it is specific to your plugin or theme. // This is a value that will be recorded in the license manager data so you can identify licenses for this item/product. define('YOUR_ITEM_REFERENCE', 'YOUR_ITEM_REFERENCE'); //Rename this constant name so it is specific to your plugin or theme. add_action('admin_menu', 'slm_sample_license_menu'); function slm_sample_license_menu() { add_options_page('Sample License Activation Menu', 'Sample License', 'manage_options', 'youlice_classesence', 'sample_license_management_page'); } function sample_license_management_page() { echo '<div class="wrap">'; echo '<h2>Sample License Management</h2>'; /*** License activate button was clicked ***/ if (isset($_REQUEST['activate_license'])) { $license_key = $_REQUEST['sample_license_key']; // Send query to the license manager server $lic = new youlice_class($license_key , YOUR_LICENSE_SERVER_URL , YOUR_SPECIAL_SECRET_KEY ); if($lic->active()){ echo 'You license Activated successfuly'; }else{ echo $lic->err; } } $lic = new youlice_class($license_key , YOUR_LICENSE_SERVER_URL , YOUR_SPECIAL_SECRET_KEY ); if($lic->is_licensed()){ echo 'Thank You Phurchasing!'; }else{ ?> <form action="" method="post"> <table class="form-table"> <tr> <th style="width:100px;"><label for="sample_license_key">License Key</label></th> <td ><input class="regular-text" type="text" id="sample_license_key" name="sample_license_key" value="<?php echo get_option('sample_license_key'); ?>" ></td> </tr> </table> <p class="submit"> <input type="submit" name="activate_license" value="Activate" class="button-primary" /> </p> </form> <?php } echo '</div>'; } class youlice_class{ public $lic; public $server; public $api_key; private $wp_option = 'product_1450'; private $product_id = 'My_product_name_OR_ID'; public $err; public function __construct($lic=false , $server , $api_key){ if($this->is_licensed()) $this->lic = get_option($this->wp_option); else $this->lic = $lic; $this->server = $server; $this->api_key = $api_key; } /** * check for current product if licensed * @return boolean */ public function is_licensed(){ $lic = get_option($this->wp_option); if(!empty( $lic )) return true; return false; } /** * send query to server and try to active lisence * @return boolean */ public function active(){ $url = YOUR_LICENSE_SERVER_URL . '/?secret_key=' . YOUR_SPECIAL_SECRET_KEY . '&slm_action=slm_activate&license_key=' . $this->lic . '®istered_domain=' . get_bloginfo('siteurl').'&item_reference='.$this->product_id; $response = wp_remote_get($url, array('timeout' => 20, 'sslverify' => false)); if(is_array($response)){ $json = $response['body']; // use the content $json = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', utf8_encode($json)); $license_data = json_decode($json); } if($license_data->result == 'success'){ update_option( $this->wp_option, $this->lic ); return true; }else{ $this->err = $license_data->message; return false; } } /** * send query to server and try to deactive lisence * @return boolean */ public function deactive(){ } } Please Note: The license validation part for your distributed plugins and themes is not part of this plugin. More on this can be found in the Software License Manager documentation.
To implement License Key validation in your plugin or theme, please check out the sample code in Maddison Designs’ Github repo.
Attention
Known incompatibility issue with iThemes Security
If you have installed “iThemes Security”, uncheck Long URL Strings where the Software License Manager plugin is installed
The plugin is really simple and well structured so you don’t have to prepare a lot in order to get it working.
Starting from $0 per month.
Rating
Reviewers
10 reviews
Tags
Developed By
Omid Shamloo
Quick & Easy
Common Ninja has a large selection of powerful Wordpress plugins that are easy to use, fully customizable, mobile-friendly and rich with features — so be sure to check them out!
Testimonial plugins for Wordpress
Contact Form plugins for Wordpress
Maps plugins for Wordpress
Translation plugins for Wordpress
Chat plugins for Wordpress
Slider plugins for Wordpress
Reviews plugins for Wordpress
Contact plugins for Wordpress
Galleries plugins for Wordpress
SEO plugins for Wordpress
Forms plugins for Wordpress
Comments plugins for Wordpress
Backup plugins for Wordpress
Privacy plugins for Wordpress
Optimize plugins for Wordpress
Tabs plugins for Wordpress
Social Sharing plugins for Wordpress
Events Calendar plugins for Wordpress
Comments plugins for Wordpress
Social Feeds plugins for Wordpress
Social Sharing plugins for Wordpress
Portfolio plugins for Wordpress
Video Player plugins for Wordpress
popup plugins for Wordpress
SiteMap plugins for Wordpress
Payment plugins for Wordpress
Coming Soon plugins for Wordpress
Inventory plugins for Wordpress
Testimonials plugins for Wordpress
Portfolio plugins for Wordpress
Membership plugins for Wordpress
Forms plugins for Wordpress
Analytics plugins for Wordpress
Events Calendar plugins for Wordpress
Sliders plugins for Wordpress
Analytics plugins for Wordpress
Reviews plugins for Wordpress
Security plugins for Wordpress
Ads plugins for Wordpress
Music Player plugins for Wordpress
Countdown plugins for Wordpress
Email Marketing plugins for Wordpress
Membership plugins for Wordpress
Ecommerce plugins for Wordpress
Customer Support plugins for Wordpress
Video Player plugins for Wordpress
Tabs plugins for Wordpress
Social Feeds plugins for Wordpress
Common Ninja Apps
Browse our extensive collection of compatible plugins, and easily embed them on any website, blog, online store, e-commerce platform, or site builder.
Show eBay reviews to build trust, strengthen credibility, and help visitors make confident purchase decisions that support higher sales.
Show payment method logos that highlight accepted payment options, build trust at checkout, and help visitors feel confident completing their purchase.
Use a reviews badge to highlight your ratings, build trust at a glance, improve credibility, and help increase conversions across your site.
Display multiple time zones with a world clock widget that offers clear global times, customizable styles, and a responsive design for better user experience.

Create consent forms that collect signatures, save submissions, send notifications, and help you manage approvals efficiently.
Add social media and RSS feeds to your site to display fresh content, grow your online presence, and keep visitors engaged with real-time updates.
Showcase visuals with a multi row image slider that displays images in layered rows, improves design, and helps visitors explore content more easily.
Use feature voting so users submit ideas, vote on requests, and help you prioritize product updates by real customer demand.
Verify visitor age with an age verification popup that helps you meet legal requirements, protect your business, and ensure responsible access.
Display Bluesky posts with a Bluesky feed carousel that auto updates, shows posts in a clear layout, and keeps visitors engaged.
Use a live weather forecast widget to show current conditions and upcoming predictions, giving visitors real time local weather updates for better planning.
Use an order form to let customers submit product orders, save entries, receive notifications, and collect payments through PayPal or Stripe for a smoother buying experience.
More plugins
The Common Ninja Search Engine platform helps website builders find the best site widgets, apps, plugins, tools, add-ons, and extensions! Compatible with all major website building platforms - big or small - and updated regularly, our Search Engine tool provides you with the business tools your site needs!
