docs: Critical metabox & custom fields compatibility gap identified
**Issue: Third-Party Plugin Compatibility** Current Status: ❌ NOT IMPLEMENTED Priority: 🔴 CRITICAL - Blocks production readiness **Problem:** Our SPA admin does NOT expose: - Custom meta fields from third-party plugins - WordPress metaboxes (add_meta_box) - WooCommerce custom fields - ACF/CMB2/Pods fields - Plugin-injected data (e.g., Tracking Number) **Example Use Case:** Plugin: WooCommerce Shipment Tracking - Adds 'Tracking Number' metabox to order edit page - Stores: _tracking_number meta field - Current: ❌ NOT visible in WooNooW admin - Expected: ✅ Should be visible and editable **Impact:** 1. Breaks compatibility with popular plugins 2. Users cannot see/edit custom fields 3. Data exists but not accessible in SPA 4. Forces users back to classic admin 5. BLOCKS production readiness **Solution Architecture:** Phase 1: API Layer (2-3 days) - Expose meta_data in OrdersController::show() - Expose meta_data in ProductsController::get_product() - Add filters: woonoow/order_api_data, woonoow/product_api_data - Add filters: woonoow/order_allowed_private_meta - Add actions: woonoow/order_updated, woonoow/product_updated Phase 2: Frontend Components (3-4 days) - Create MetaFields.tsx component - Create useMetaFields.ts hook - Update Orders/Edit.tsx to include meta fields - Update Products/Edit.tsx to include meta fields - Add meta fields to detail pages Phase 3: Plugin Integration (2-3 days) - Create MetaFieldsRegistry.php - Add woonoow/register_meta_fields action - Localize fields to JavaScript - Create example: ShipmentTracking.php integration - Document integration pattern **Documentation Created:** - METABOX_COMPAT.md - Complete implementation guide - Includes code examples for all phases - Includes third-party integration guide - Includes testing checklist **Updated:** - PROJECT_SOP.md - Added metabox compat reference - Marked as CRITICAL requirement - Noted as blocking production readiness **Timeline:** Total: 1-2 weeks implementation **Blocking:** - ✅ Coupons CRUD (can proceed) - ✅ Customers CRUD (can proceed) - ❌ Production readiness (BLOCKED) **Next Steps:** 1. Review METABOX_COMPAT.md 2. Prioritize implementation 3. Start with Phase 1 (API layer) 4. Test with popular plugins (Shipment Tracking, ACF)
This commit is contained in:
@@ -33,6 +33,12 @@ WooNooW modernizes WooCommerce **without migration**, delivering a Hybrid + SPA
|
||||
- Prevents route conflicts between modules
|
||||
- Documents ownership and naming conventions
|
||||
|
||||
**Metabox & Custom Fields compatibility:**
|
||||
- `METABOX_COMPAT.md` - 🔴 **CRITICAL** compatibility requirement
|
||||
- Documents how to expose WordPress/WooCommerce metaboxes in SPA
|
||||
- **Currently NOT implemented** - blocks production readiness
|
||||
- Required for third-party plugin compatibility (Shipment Tracking, ACF, etc.)
|
||||
|
||||
**Documentation Rules:**
|
||||
1. ✅ Update `PROGRESS_NOTE.md` after completing any major feature
|
||||
2. ✅ Add test cases to `TESTING_CHECKLIST.md` before implementation
|
||||
|
||||
Reference in New Issue
Block a user