You've already forked wc-tier-and-package-prices
Release version 1.1.6 - Critical fix for plugin activation
Fixed critical bug that prevented plugin activation in v1.1.3, v1.1.4, and v1.1.5. Root Cause: - WC_TPP_Cart and WC_TPP_Frontend classes were instantiated immediately when their files were loaded (via `new ClassName();` at bottom of files) - This happened BEFORE WooCommerce was fully loaded - Hook registration attempted to access WooCommerce functions before they existed - Result: Fatal error during plugin activation Solution: - Removed immediate instantiation from class-wc-tpp-cart.php (line 251) - Removed immediate instantiation from class-wc-tpp-frontend.php (line 186) - Added init_classes() method to main plugin class - Classes now instantiated via woocommerce_loaded hook - Ensures WooCommerce is fully initialized before any hooks are registered Changes: - includes/class-wc-tpp-cart.php - Removed `new WC_TPP_Cart();` - includes/class-wc-tpp-frontend.php - Removed `new WC_TPP_Frontend();` - wc-tier-and-package-prices.php - Added init_classes() and woocommerce_loaded hook - CHANGELOG.md - Added v1.1.6 section - composer.json - Version 1.1.6 - All translation files updated to 1.1.6 - All .mo files recompiled This fix ensures proper WordPress plugin lifecycle: 1. Plugin file loaded 2. Classes defined (but not instantiated) 3. WooCommerce loads 4. woocommerce_loaded hook fires 5. Classes instantiated with full WooCommerce availability 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
13
CHANGELOG.md
13
CHANGELOG.md
@@ -5,6 +5,19 @@ All notable changes to WooCommerce Tier and Package Prices will be documented in
|
||||
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.6] - 2025-12-21
|
||||
|
||||
### Fixed
|
||||
- **CRITICAL:** Plugin activation fatal error in v1.1.3, v1.1.4, and v1.1.5
|
||||
- Fatal error caused by premature class instantiation before WooCommerce is loaded
|
||||
- Removed immediate class instantiation from `class-wc-tpp-cart.php` and `class-wc-tpp-frontend.php`
|
||||
|
||||
### Technical
|
||||
- Moved `WC_TPP_Cart` and `WC_TPP_Frontend` instantiation to `woocommerce_loaded` hook
|
||||
- Added `init_classes()` method to main plugin class for controlled class initialization
|
||||
- Ensures WooCommerce is fully loaded before registering hooks that depend on WC functions
|
||||
- Fixed hook registration timing to prevent accessing WooCommerce before it's available
|
||||
|
||||
## [1.1.5] - 2025-12-21
|
||||
|
||||
### Fixed
|
||||
|
||||
Reference in New Issue
Block a user