From 85983d54731fd6ffd1dac659855cc9064feecdbd Mon Sep 17 00:00:00 2001 From: magdev Date: Wed, 31 Dec 2025 22:51:49 +0100 Subject: [PATCH] Bump version to 1.1.11 - Add variable product support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Feature release adding support for variable products and their variations. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- CHANGELOG.md | 36 ++++++++++++++++++++++++++++++++++++ wc-composable-product.php | 4 ++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 78940c4..318258d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,42 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.11] - 2025-12-31 + +### Added + +- **FEATURE**: Variable product support - composable products can now include variable products and their variations +- Variable products automatically expand to show all available variations as selectable items +- Each variation displays with full attribute information (e.g., "Product - Color: Red, Size: Large") + +### Fixed + +- Products not showing in selector when all available products were variable products +- Variable products were being filtered out because parent products aren't directly purchasable + +### Changed + +- Modified `get_available_products()` to detect and handle variable products +- Variable products now expand into their individual variations +- Each variation checked individually for stock status and purchasability +- Simple products continue to work exactly as before + +### Technical + +- Modified file: includes/Product_Type.php (lines 160-188) +- Added logic to detect `is_type('variable')` products +- Uses `get_available_variations()` to retrieve all variations +- Each variation validated with `is_in_stock()` and `is_purchasable()` +- Maintains backward compatibility with simple products + +### Notes + +- This is a feature enhancement release, not a bug fix +- Resolves the issue where categories containing only variable products showed no selections +- Variations display with their parent product name plus selected attributes +- Stock management works correctly for both simple products and variations +- All translation files remain at 100% completion (57/57 strings - no new strings added) + ## [1.1.10] - 2025-12-31 ### Fixed diff --git a/wc-composable-product.php b/wc-composable-product.php index 9b3a2b8..0368998 100644 --- a/wc-composable-product.php +++ b/wc-composable-product.php @@ -3,7 +3,7 @@ * Plugin Name: WooCommerce Composable Products * Plugin URI: https://github.com/magdev/wc-composable-product * Description: Create composable products where customers select a limited number of items from a configurable set - * Version: 1.1.10 + * Version: 1.1.11 * Author: Marco Graetsch * Author URI: https://example.com * License: GPL v3 or later @@ -19,7 +19,7 @@ defined('ABSPATH') || exit; // Define plugin constants -define('WC_COMPOSABLE_PRODUCT_VERSION', '1.1.10'); +define('WC_COMPOSABLE_PRODUCT_VERSION', '1.1.11'); define('WC_COMPOSABLE_PRODUCT_FILE', __FILE__); define('WC_COMPOSABLE_PRODUCT_PATH', plugin_dir_path(__FILE__)); define('WC_COMPOSABLE_PRODUCT_URL', plugin_dir_url(__FILE__));