# Changelog All notable changes to WooCommerce Tier and Package Prices 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.0] - 2025-12-21 ### Added - Package quantity restriction feature - Global setting to restrict quantities to defined package sizes - Per-product setting to restrict quantities to defined package sizes - Frontend validation preventing non-package quantities - Server-side cart validation for package quantities - User-friendly error messages showing available package sizes - Automatic quantity field hiding when restriction is enabled - Package selection UI with highlighted states ### Changed - Enhanced package pricing display template with restriction mode support - Improved JavaScript to handle restricted mode package selection - Updated frontend to show "Choose a package size below" notice in restricted mode ### Technical - Added `validate_package_quantity()` method in WC_TPP_Cart class - Added `maybe_hide_quantity_input()` method in WC_TPP_Frontend class - Extended `woocommerce_add_to_cart_validation` filter hook - Added `wc-tpp-restricted-mode` CSS class for styling - New product meta: `_wc_tpp_restrict_to_packages` - New global option: `wc_tpp_restrict_package_quantities` ### Translations - Added 7 new translatable strings - Updated all translations (en_US, de_DE, de_CH_informal) - Compiled all .mo files with new strings ## [1.0.2] - 2025-12-21 ### Changed - Migrated settings to WooCommerce Settings page as dedicated tab - Settings now appear under WooCommerce > Settings > Tier & Package Prices - Improved integration with WooCommerce native settings API ### Added - WC_TPP_Settings class extending WC_Settings_Page - Better integration with WooCommerce settings system - Consistent UI with other WooCommerce settings tabs ### Removed - Standalone settings submenu (WooCommerce > Tier & Package Prices) - Custom settings template (templates/admin/settings-page.twig) ### Technical - Implemented WooCommerce settings filter hook (woocommerce_get_settings_pages) - Uses WC_Admin_Settings for rendering and saving - Automatic settings persistence via WooCommerce API ## [1.0.1] - 2025-12-21 ### Added - Twig template engine integration for all templates - Template loader class with WordPress integration - German (Switzerland, Informal) translation (de_CH_informal) - Composer dependency management - Comprehensive translation support in Twig templates - Template caching support (disabled in debug mode) ### Changed - Migrated all PHP templates to Twig format (.twig) - Improved template organization and separation of concerns - Enhanced security with automatic HTML escaping in templates - Updated composer.json with complete package metadata ### Removed - Old PHP template files (replaced with Twig) ### Technical - Added Twig v3.22.2 dependency - Created WC_TPP_Template_Loader class for centralized template rendering - Integrated WordPress functions (__(), _e(), esc_*, wc_price()) into Twig - Added Swiss German localization with informal address form - Organized templates into admin/ and frontend/ directories ## [1.0.0] - 2025-12-21 ### Added - Initial release - Tier pricing functionality (quantity-based discounts) - Package pricing functionality (fixed-price bundles) - Admin settings page for plugin configuration - Product meta boxes for configuring tier and package prices - Frontend pricing tables display - Cart integration for automatic price calculation - WooCommerce HPOS compatibility - Multilingual support with text domain - German (Germany) translation (de_DE) - English (US) translation (en_US) ### Features - Volume discounts based on quantity thresholds - Fixed-price packages with custom labels - Configurable display positions (before/after cart button, after price) - Real-time price updates in cart - Responsive pricing tables - Admin-friendly interface for price management