Software License Managerプラグイン

はじめに

「Software License Manager」は自作したワードプレスのプラグインやテーマにラインセンス認証機能を組み込むことができるワードプレスのプラグインである。オンラインストアを運営している人や、デジタル製品を販売している人にとって役立つプラグインだ。

主な特徴は以下の通り。

1. ライセンスキーの自動生成:プラグインを利用することで、デジタル製品のライセンスキーを自動生成することができる。また、期限付きのライセンスを作成することも可能である。

2. ライセンス認証:ライセンスキーを利用して、製品の利用者が正規のユーザーであるかどうかを認証することができる。

3. ライセンス管理:ライセンスの有効期限や利用状況などを管理することができる。また、ライセンスの制限や無効化も行える。

4. 自動更新:自動更新機能を利用することで、有料製品の購入者に対して新しいバージョンの製品を提供することができる。

5. カスタマイズ可能な設定:ライセンスの期限やライセンス認証の方式など、さまざまな設定をカスタマイズすることができる。

今回の記事ではライセンスキーの生成とアクティベーションの手順を紹介する。

手動でライセンスキーを生成する

Software License Managerの管理画面から「Add/Edit Licenses」を選択する。

「Add New License」をクリックする。




登録フォームが表示される。次のような項目がある。

License Key:ラインスキー。他のものとは重複しないようにユニークな値を設定する必要がある。
Maximum Allowed Domains:このライセンスの有効化を許可するドメインの数。1つのラインスで最大3サイトまでテーマを有効化するといった使い方できる。
License Status:ラインセンスの現在のステータス。pending:保留、Active:有効、Blocked:ブロック済み、Expired:期限切れ、の4つのステータスがある。

First Name:商品購入者の氏名(名)
Last Name:商品購入者の氏名(姓)
Email Address:商品購入者のメールアドレス
Company Name:商品購入者の会社名
Unique Transaction ID:商品購入者のトランザクションID、決済番号のような購入履歴でユニークになっているものを指定する。
Manual Reset Count:手動でリセットした回数。これを設定しておくと後で約に立つと記載されているが特に役立つ場面が思い浮かばない。
Date Created:ライセンスキーを作成した年月日
Date Renewed:ライセンスキーが更新された年月日。更新といっても投稿の更新と同じではなく、1年間有効だったライセンスキーを期限切れとともに再購入して更新された日という意味。
Date of Expiry:ライセンスキーの有効期限
Product Reference:商品の参照。商品IDなどを設定する。
SubscriberID:サブスクライバーID:定期購読を決済した際に発行されるIDなどを設定する。
User References:ユーザーの参照。ユーザーIDのようなユーザーを得的できるものを指定する。

ここではサンプルとして下記のように入力して「Save Record」ボタンを押した。

License Key:自動生成された値
Maximum Allowed Domains:1
License Status:pending:保留
First Name:ユーザー1
Last Name:インデックス
Email Address:xxxxxx@gmail.com
Company Name:わくわくプラグイン製作所
Unique Transaction ID:paid001
Manual Reset Count:未入力
Date Created:2023/05/01
Date Renewed:未入力
Date of Expiry:2024/05/01
Product Reference:item001
SubscriberID:未入力
User References:uid001

Manage Licenses画面を表示すると作成されたライセンスが表示されている。

ライセンスのアクティベーション

「Software License Manager」プラグインではラインセンスをアクティベーション(認証)するためのサンプルがプラグインとして用意されている。
https://www.tipsandtricks-hq.com/wp-content/uploads/plugins/client-side-examples.zip からzipファイルをダウンロードして解凍すると、sample-pluginというフォルダが作成されるので、認証させたいワードプレスのpluginsフォルダに移動し、管理画面から有効化する。

認証させるための定数の設定

次に「Software License Manager」プラグインに認証情報を送りアクティベーションできるようにsample-plugin/slm-sample-plugin.phpを編集する。

編集箇所は次の3箇所。

1.11行目付近の`YOUR_SPECIAL_SECRET_KEY`
2.16行目付近の`YOUR_LICENSE_SERVER_URL`
3.19行目付近の`YOUR_ITEM_REFERENCE`

まず`YOUR_SPECIAL_SECRET_KEY`には「Software License Manager」プラグインをインストールしたワードプレスの管理画面の設定画面に表示されている。

「Secret Key for license Verification Requests」に表示されている値を設定する。

次に`YOUR_LICENSE_SERVER_URL`には「Software License Manager」のトップページにURLを設定する。例えばトップページのURLが「http://my.blogwriter」の場合はそれを設定する。

最後に`YOUR_ITEM_REFERENCE`にはライセンスししたいプラグインまたはテーマの名称を設定する。これは管理画面でどのプラグインが認証されたのかがわかればいい。ここでは WakuWaku Plugin に設定した。

アクティベーションを行う

次は sample-plugin をインストールしたワードプレスから「Software License Manager」に対してライセンスのアクティベーションを行う。

「設定」->「Sample License」を選択するとライセンスキーの入力フォームが表示されるので、先立って作成したライセンスキーを入力して「Activate」ボタンをクリックすると License key activated と表示されアクティベーションが成功する。

アクティベーションが成功すると「Software License Manager」のライセンス一覧画面でライセンスのstatusがpendingからactivateに、domainsが0/1から1/1に変わっているのがわかる。

アクティベーションの解除を行う

「Software License Manager」ではアクティベーションの解除も簡単に行える。sample-pluginの設定画面でライセンスキーを設定した状態のまま「Deactive」ボタンをクリックする。 The license key has been deactivated for this domain と表示され、アクティベーションが解除される。


「Software License Manager」のライセンス一覧画面を確認するとStatusはactiveのままで、Domainsが0/1に変更されている。

APIを使ってライセンスキーに対する操作を行う

「Software License Manager」には管理画面の操作によってライセンスに対する操作を行う方法の他にAPIによっても行える。この機能を用いればユーザーの決済完了後に自動でライセンスキーを発行するようにプログラムを組むことでライセンス発行の自動化が可能になる。

「Software License Manager」では次のような機能が用意されている。

・ライセンスキーの作成
・ライセンスキーのアクティベーション
・ライセンスキーの解除
・ライセンスキーのチェック

これらの機能をGETまたはPOSTでリクエストを送ることで行える。

詳細はプラグインフォルダのsoftware-license-manager/slm-api-listener.php に記載されているのでPHPに詳しい人は確認してみてほしい。

まとめ

ライセンス認証を行うプラグインはいつくか存在するが、「Software License Manager」は特にシンプルなプラグインだ。ラインセンスの作成、編集、有効化、無効化の機能以外は持たないので、PHPの初心者でも組み込みやすいプラグインだろう。

関連記事一覧

  • コメント ( 0 )

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。