You've already forked wc-licensed-product
Implement self-licensing (v0.3.0) and settings sub-tabs (v0.3.1)
v0.3.0 - Self-Licensing: - Add PluginLicenseChecker singleton for license validation - Integrate magdev/wc-licensed-product-client library - Add license settings: server URL, key, optional secret - Disable frontend features without valid license (except localhost) - Add license status display with verify button in settings v0.3.1 - Settings UI Improvements: - Reorganize settings page with WooCommerce-style sub-tabs - Split settings into: Plugin License, Default Settings, Notifications - Use PHP 8 match expression for section-specific rendering Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
41
CHANGELOG.md
41
CHANGELOG.md
@@ -7,6 +7,43 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [0.3.1] - 2026-01-22
|
||||
|
||||
### Changed
|
||||
|
||||
- Settings page reorganized with sub-tab navigation similar to WooCommerce Advanced tab
|
||||
- Settings split into three sections: Plugin License, Default Settings, Notifications
|
||||
- Improved settings UI with WooCommerce-style section navigation
|
||||
|
||||
### Technical Details
|
||||
|
||||
- SettingsController refactored with `getSections()` and `outputSections()` methods
|
||||
- Section-specific settings methods using PHP 8 match expression
|
||||
- Hooks updated to use `woocommerce_sections_licensed_product` for sub-navigation
|
||||
|
||||
## [0.3.0] - 2026-01-22
|
||||
|
||||
### Added
|
||||
|
||||
- Self-licensing functionality: Plugin validates its own license against a remote server
|
||||
- Plugin license settings in WooCommerce > Settings > Licensed Products tab
|
||||
- License Server URL, License Key, and optional Server Secret configuration
|
||||
- License status display in settings with verify button
|
||||
- Localhost bypass: All features work without license when running on localhost
|
||||
- Admin notice when plugin license is not configured or invalid
|
||||
|
||||
### Changed
|
||||
|
||||
- Frontend features now require a valid plugin license to function
|
||||
- Disabled features without license: Checkout domain field, customer licenses page, downloads, license generation
|
||||
|
||||
### Technical Details
|
||||
|
||||
- New `PluginLicenseChecker` singleton class for license validation
|
||||
- Integration with `magdev/wc-licensed-product-client` Composer package
|
||||
- Caching: 1 hour for valid license, 5 minutes for errors
|
||||
- Localhost detection supports: localhost, 127.0.0.1, ::1, and .localhost/.local subdomains
|
||||
|
||||
## [0.2.2] - 2026-01-22
|
||||
|
||||
### Added
|
||||
@@ -373,7 +410,9 @@ define('WC_LICENSE_SERVER_SECRET', 'your-secure-random-string-min-32-chars');
|
||||
- WordPress REST API integration
|
||||
- Custom WooCommerce product type extending WC_Product
|
||||
|
||||
[Unreleased]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.2.2...HEAD
|
||||
[Unreleased]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.3.1...HEAD
|
||||
[0.3.1]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.3.0...v0.3.1
|
||||
[0.3.0]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.2.2...v0.3.0
|
||||
[0.2.2]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.2.1...v0.2.2
|
||||
[0.2.1]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.2.0...v0.2.1
|
||||
[0.2.0]: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/compare/v0.1.0...v0.2.0
|
||||
|
||||
Reference in New Issue
Block a user