chore: complete M1.1 runtime QA and release packaging

This commit is contained in:
XShop
2026-09-13 19:04:41 +03:30
commit f11e1d650d
66 changed files with 3094 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
# XShop – Compatibility
## 1. Tested Up To
| Dependency | Minimum | Tested |
|------------|---------|--------|
| WordPress | 6.4 | 6.6.x |
| WooCommerce| 8.0 | 9.x |
| PHP | 8.2 | 8.2, 8.3 |
| Elementor | 3.15 (optional) | 3.2x |
| Gutenberg | WP bundled | — |
| Browsers | last 2 versions: Chrome, Firefox, Edge, Safari | — |
## 2. WordPress APIs Used
- Theme support: `add_theme_support('title-tag','post-thumbnails','html5','custom-logo','woocommerce'...)`
- Menus/sidebars/widgets: `register_nav_menus`, `register_sidebar`, `widgets_init`.
- Settings: `register_setting` + single option `xshop_settings` (Settings API).
- Customizer: `customize_register` for preview (typography/colours).
- REST: `register_rest_route` (namespace `xshop/v1`).
## 3. WooCommerce Integration
- Declared `add_theme_support('woocommerce')` + gallery features (`wc-product-gallery-zoom/lightbox/slider`).
- Wrapper via `woocommerce_before_main_content` / `after_main_content`.
- Hooks over template overrides. Overrides documented in `docs/woocommerce.md` with WC version map; monitor `WC()->version` and template `Version:` header.
## 4. HPOS
- Uses `wc_get_products` CRUD, not direct post table writes. Compatible with High-Performance Order Storage. No direct `wp_posts` manipulation for orders.
## 5. Elementor
- Widgets registered via `\Elementor\Plugin::instance()->widgets_manager->register` if Elementor active. Namespaced `XShop\Core\Elementor\Widgets\*`. No hard dependency – `is_plugin_active` guard.
## 6. Gutenberg
- Block styles via `register_block_style`, theme.json opt-in later. No classic-editor dependency.
## 7. Multisite
- Not primary target; options are per-site (no network options in v1).
## 8. Upgrade Notes
- Template version bumps checked via `WC template version` comment. Override only where necessary; changelog notes any override update.