広範なベータ期間 と4回のリリース候補を経て、Software Licensing バージョン3.6が利用可能になりました!この新バージョンは、eコマースデータ専用のデータベーステーブルを導入する、私たちがリリースしてきた一連のプラグインアップデートの次のイテレーションです。専用データベーステーブルへのデータの移行は、パフォーマンスを大幅に向上させ、将来の機能強化のための柔軟性と制御性を高めます。
これは基盤となるデータ構造に大きな変更を加えるメジャーリリースであるため、アップデートはお客様に段階的に展開することを選択しました。まず、アップデートは一部のお客様に提供され、その後毎日さらに多くのお客様に提供されます。これにより、すべてのお客様がアップデートされる前に、ベータ段階で特定されなかった問題に注意を払うことができます。
新しいデータベーススキーマ
バージョン3.6では、ライセンスキー、ライセンスメタデータ、ライセンスアクティベーション用の3つのデータベーステーブルを導入しました。アップデートがインストールされると、ストアオーナーは、既存のライセンスデータを新しく専用のテーブルに移行するアップグレードルーチンを開始するためのプロンプトが表示されます。

移行が完了すると、ライセンスキーに関連するすべての機能、およびチェックアウトやストア管理などの多くの関連機能のパフォーマンスが向上します。
新しいデータベーステーブルの名前と列は次のとおりです。
wp_edd_licenses
- ID
- license_key
- ステータス
- download_id
- price_id
- payment_id
- cart_index
- date_created
- expiration
- parent
- customer_id
- user_id
wp_edd_licensemeta
- meta_id
- license_id
- meta_key
- meta_value
wp_edd_license_activations
- site_id
- site_name
- license_id
- activated
- is_local
ユーザーロール機能の追加
パフォーマンスの向上に加え、Software Licensing 3.6ではユーザーロール機能の制御も向上しています。スタッフがアクセスおよび実行できるデータとアクションをストアオーナーがより細かく調整できるように、ユーザーロールに新しい機能を追加しました。
- view_licenses: 個々のライセンスキーのリストテーブルと詳細ページを表示できます。この権限は、ショップマネージャー、ショップワーカー、および管理者のロールに追加されました。
- manage_licenses: ライセンスデータを変更できます。この権限は、ショップマネージャー、ショップワーカー、および管理者のロールに追加されました。
- delete_licenses: ライセンスレコードを削除できます。この権限は、ショップマネージャーおよび管理者に追加されました。
ライセンスキーのアップグレードまたはダウングレード価格ID
割り当てられた変動価格のライセンスキーは、管理画面から価格オプションを編集できるようになりました。これにより、ストアのオーナーやスタッフは、顧客のライセンスキーをあるオプションから別のオプションに簡単にアップグレードまたはダウングレードできます。

フロントエンドからベータ版をダウンロードする
ベータ版リリースは、Software Licensing の 3.5 以降でサポートされています。3.6 では、顧客アカウント領域のフロントエンドで利用可能なベータバージョンのダウンロードリンクを表示するサポートを追加することで、この機能を改善しました。

その他の改善
- ライセンスリストテーブルにさらに情報が追加されました。
- アイテムIDがAPIレスポンスに追加されました。
- 部分的なライセンス検索を許可するようにライセンス検索が改善されました。
- フロントエンドテーブルには、テーマのサポートを改善するために
.edd-tableクラスが追加されました。 - 変更履歴の出力をフィルタリングできるようになりました。
- 更新支払い時に払い戻しを行うと、ライセンスの有効期限がロールバックされます。
- ライセンス管理のためのより良いツールチップ。
EDD_SL_Licenseクラスからfinalキーワードを削除しました。- ライセンスのエクスポートツールは、タイムアウトを回避するためにバッチ処理APIを使用するようになりました。
- アップグレード日と更新日は、ライセンスメタに保存されるようになりました。
注目のバグ修正
- ライセンスカウントチェックの全体的なパフォーマンスが向上しました。
- ライフタイムの子ライセンスの有効期限は、親ライセンスに紐付けられるようになりました。
activate_licenseAPI 呼び出しが、ライセンスログにアクティベーションを 2 回記録していました。- ライフタイムからバンドルへのアップグレードで、有効期限に問題が発生していました。
- 支払い記録の削除が、更新およびアップグレードのライセンスメタに正しく影響するようになりました。
- ベータファイルの URL は、
httpに強制されなくなりました。 - サンプルプラグインは、
current_time( 'timestamp' )の代わりにtime()を使用するようになりました。 empty_cart関数を使用すると、更新セッションデータが削除されるようになりました。
このアップデートには、さらに 2 つの重要な注意事項があります。
まず、アップデート完了後、ライセンスキーのカウントは異なる可能性が高いです。
移行の実行後、ライセンスリストテーブルの一部のステータスカウントが変更されていることに気づくかもしれません。これは、移行中にライセンスに対していくつかのチェックが実行され、不正なステータスが修正されたためです。個々のステータスのカウントに違いが見られるかもしれませんが、全体のライセンス数は同じままであるはずです。
次に、移行中に新しい購入とライセンスキーが通常どおり作成される可能性があります。
データ移行が実行されている間も、ストアは引き続き支払いを処理し、新しいライセンスを生成できます。これは、ストアが通常どおり運営され、新しい顧客はデータ移行の影響を受けないことを意味します。




