You've already forked wc-tier-and-package-prices
Fixed persistent duplicate settings page by improving duplicate detection to check by class type and ID instead of strict instance comparison. Issue: - Strict instance comparison (===) failed to detect duplicates - Different object instances of same class not caught by previous check - Settings page still appearing twice despite singleton and instance caching Solution: - Changed duplicate detection from instance comparison to type/ID checks - Added instanceof WC_TPP_Settings check - Added get_id() method check for ID 'tier_package_prices' - Added direct id property check as fallback - Multiple layers of detection to catch duplicates regardless of how created Fixes: - Settings page rendering twice in WooCommerce backend - Duplicate detection failing for different instances of same class Changes: - Enhanced add_settings_page() with multi-layer duplicate detection - Checks: instanceof, get_id(), and id property - Returns early if any existing page matches criteria Technical Details: - Strict comparison only works if exact same object instance - Different instances (even of same class/ID) fail === check - instanceof checks class type regardless of which instance - ID checks ensure no duplicate pages with same identifier - Fallback checks handle different WooCommerce versions/implementations Updated Files: - includes/class-wc-tpp-admin.php (enhanced duplicate detection) - wc-tier-and-package-prices.php (version 1.1.19) - composer.json (version 1.1.19) - CHANGELOG.md (v1.1.19 section) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
23 lines
542 B
JSON
23 lines
542 B
JSON
{
|
|
"name": "magdev/wc-tier-package-prices",
|
|
"description": "WooCommerce plugin for tier pricing and package prices with Twig templates",
|
|
"version": "1.1.19",
|
|
"type": "wordpress-plugin",
|
|
"license": "GPL-2.0-or-later",
|
|
"authors": [
|
|
{
|
|
"name": "Marco Graetsch",
|
|
"homepage": "https://src.bundespruefstelle.ch/magdev"
|
|
}
|
|
],
|
|
"require": {
|
|
"php": ">=7.4",
|
|
"twig/twig": "^3.0"
|
|
},
|
|
"autoload": {
|
|
"classmap": [
|
|
"includes/"
|
|
]
|
|
}
|
|
}
|