Critical error on activation
-
With 1.30.6 version of your plugin you shipped a function into production which is just “copy->paste” from other source leading to obvious issues if anyone else has same practices as you have.
[09-Oct-2025 11:23:34 UTC] PHP Fatal error: Cannot redeclare rudr_hpos_compatibility() (previously declared in //wp-content/plugins/multiparcels-shipping-for-woocommerce/multiparcels-shipping-for-woocommerce.php:780) in /wp-content/plugins/woo-shipping-dpd-baltic/dpd.php on line 76So your plugin and DPD plugin coppied same function from same source https://rudrastyh.com/woocommerce/high-performance-order-storage.html in order to just comply with woocommerce HPOS? Don’t you use some function naming practices?
The code you are running in production of this version:
add_action( 'before_woocommerce_init', 'rudr_hpos_compatibility' );
function rudr_hpos_compatibility() {
if( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
\Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility(
'custom_order_tables',
__FILE__,
true // true (compatible, default) or false (not compatible)
);
}
}
// add_action('before_woocommerce_init', function(){
// if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
// if (class_exists( \Automattic\WooCommerce\Utilities\OrderUtil::class )) {
// if (\Automattic\WooCommerce\Utilities\OrderUtil::custom_orders_table_usage_is_enabled()) {
// \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
// }else {
// \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, false );
// }
// }
// }
// });I intentionally added the commented section, which clearly shows that someone who added or lets say was trying to add this feature clearly did not know what he was doing but just was “vibe” coding.
I apologise for my tone, but hope someone who is higher up reading this understand my concern.
The topic ‘Critical error on activation’ is closed to new replies.