在自定义插件错误问题中扩展 WC_Product 类(未找到 WC_Product 类)

Eli*_*lez 2 php wordpress class woocommerce hook-woocommerce

我正在尝试扩展 WC_Product 类以将“property1”和“property2”添加到受保护的数组 $data 中,但是当我尝试运行我的插件时,它给了我下一个错误:

WC_Product 未找到。

这是我的代码:

class WC_MyClass extends WC_Product {
    function __construct() {
        parent::__construct();
        array_push($data, "property1", "property2");
    }
}
Run Code Online (Sandbox Code Playgroud)

我需要的是在我的插件中扩展 WC_Product 类。

插件详细信息:我的插件包括根据我所在国家/地区的 FedEx 表费率计算运费。为此,我使用了 Woocommerce Table Rate Shipping 插件。问题是联邦快递有时考虑的不是实际重量而是体积,所以我想做一个插件来确定哪个重量更大并将其分配给一个变量。这个想法是设置运输重量以使用它来计算运输成本而不是修改产品重量规格。这就是为什么我试图扩展 WC_Product 类以向其添加运输重量属性。我已经完成了所有的微积分,现在我只需要存储运输重量即可将其与 Woocommerce Table Rate Shipping 插件一起使用。

文档:WC_Product 类 - $data 属性

Dav*_*tch 5

如果您自己拥有扩展功能,则还不会创建 WooCommerce 类。您必须将类扩展添加到init钩子或woocommerce_init像这样:

add_action( 'init', 'register_myclass' );
function register_myclass() {
  class WC_MyClass extends WC_Product {
    /*now you can override whatever you like*/
  }
}
Run Code Online (Sandbox Code Playgroud)