WordPressプラグインのライセンスシステムを構築する方法

商用WordPressプラグインを販売するには、ライセンスシステムが必要です。

顧客のサイトでキーを有効化する必要があります。キーを特定のドメインに紐付ける必要があります。また、ユーザーが1つのキーを複数のサイトで使い回すのを防がなければなりません。

多くの人はFreemiusやEDDを使用しています。これらのツールはうまく機能しますが、収益シェア(手数料)が発生します。また、サードパーティへの依存が生じます。つまり、プロセスを完全にコントロールすることはできません。

私たちはRideCab WPのために独自のシステムを構築しました。ここでは、カスタムシステムをゼロから構築する方法を紹介します。

システムは2つの部分で構成されます。

  1. ライセンスサーバー これは自身のインフラ上で動作します。マーケティングサイトにWordPressのMust-Use(MU)プラグインを使用します。データベースにキーを保存し、有効化と検証のためにREST APIを使用します。また、キーを管理するためのダッシュボードを提供します。

  2. クライアント これは商用プラグイン内に含まれるPHPクラスです。設定ページを追加し、有効化のためにサーバーを呼び出します。検証結果をキャッシュし、バックグラウンドで定期的に再検証を行います。

主要な要件:

最も重要なルールは、「Fail open(オープンに失敗する)」ことです。

もしライセンスサーバーがダウンしても、顧客を締め出さないでください。「Fail closed(クローズに失敗する)」、つまり検証に失敗した際にアクセスを遮断してしまうと、顧客のサイトが壊れた状態になります。これはあなたの評判を落とします。「Fail open」であれば、プラグインは動作し続けます。少数の海賊版利用者が無料で使うかもしれませんが、有料顧客の満足度は維持されます。

ベストプラクティス:

このセットアップはライセンスの基本をカバーしています。アップデートの配信については含んでいません。それについては今後の投稿で説明します。

Source: https://dev.to/canopuswebagency/how-to-build-a-wordpress-plugin-licensing-system-from-scratch-without-freemius-4l51