• evscoding

    (@evscoding)


    With 1.2.87 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 76

    So your plugin and Multiparcels 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?

    add_action( 'before_woocommerce_init', 'rudr_hpos_compatibility' );


    function rudr_hpos_compatibility() {
    $woocommerce_version = dpd_get_woocommerce_version();

    if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
    if($woocommerce_version >= DPD_COMPATIBILITY_MINIMUM_HPOS_WOOCOMMERCE_VERSION){
    \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', 'woo-shipping-dpd-baltic/dpd.php', false );
    } else {
    \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', 'woo-shipping-dpd-baltic/dpd.php', true );
    }
    }
    // 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)
    // );
    // }

    }

    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.