feat: Phase 3 - MetaFieldsRegistry system (Level 1 COMPLETE)
Implemented: PHP MetaFieldsRegistry for Level 1 Compatibility Created MetaFieldsRegistry.php: - register_order_field() - Register order meta fields - register_product_field() - Register product meta fields - Auto-add to allowed/updatable meta lists - Localize to window.WooNooWMetaFields - Zero coupling with specific plugins Features: - Automatic label formatting from meta key - Support all field types (text, textarea, number, select, date, checkbox) - Section grouping - Description and placeholder support - Auto-registration to API filters Initialized in Bootstrap.php: - Added MetaFieldsRegistry::init() - Triggers woonoow/register_meta_fields action - Localizes fields to JavaScript Updated METABOX_COMPAT.md: - Added complete plugin integration examples - Shipment Tracking example - ACF example - Custom plugin example - API response examples - Field types reference - Marked as COMPLETE How Plugins Use It: 1. Store data: update_post_meta (standard WooCommerce) 2. Register fields: MetaFieldsRegistry::register_order_field() 3. Fields auto-exposed in API 4. Fields auto-displayed in WooNooW admin 5. Data saved to WooCommerce database 6. Zero migration needed Result: - Level 1 compatibility FULLY IMPLEMENTED - Plugins work automatically - Zero addon dependencies in core - Production ready All 3 Phases Complete: Phase 1: Backend API (meta exposure/update) Phase 2: Frontend components (MetaFields/useMetaFields) Phase 3: PHP registry system (MetaFieldsRegistry) Status: READY FOR PRODUCTION
This commit is contained in:
@@ -12,6 +12,7 @@ use WooNooW\Compat\RouteRegistry;
|
||||
use WooNooW\Compat\NavigationRegistry;
|
||||
use WooNooW\Compat\PaymentChannels;
|
||||
use WooNooW\Compat\SettingsProvider;
|
||||
use WooNooW\Compat\MetaFieldsRegistry;
|
||||
use WooNooW\Admin\Rest\MenuController;
|
||||
use WooNooW\Admin\Rest\SettingsController;
|
||||
use WooNooW\Api\Routes;
|
||||
@@ -45,6 +46,9 @@ class Bootstrap {
|
||||
NavigationRegistry::init();
|
||||
PaymentChannels::init();
|
||||
|
||||
// Level 1 compatibility: Meta fields registry
|
||||
MetaFieldsRegistry::init();
|
||||
|
||||
MenuProvider::init();
|
||||
MenuController::init();
|
||||
SettingsProvider::init();
|
||||
|
||||
Reference in New Issue
Block a user