我正在尝试扩展WC_Product类,将“property1”和“property2”添加到受保护的数组$ data中,但是当我尝试运行我的插件时,它会给我下一个错误:
找不到WC_Produ。
这是我的代码:
class WC_MyClass extends WC_Product {
function __construct() {
parent::__construct();
array_push($data, "property1", "property2");
}
}
我需要的是在我的插件中扩展WC_Product类。
插件详情: 我的插件包括根据我国的FedEx表格费率计算运费。 要做到这一点,我正在使用Woocommerce表费率运输插件。问题是联邦快递有时会考虑实际重量而不是体积,因此我想做一个插件来确定哪个权重更大并将其分配给变量。我们的想法是设置运输重量以使用它来计算运输成本,而不是修改产品重量规格。这就是我试图扩展WC_Product类以增加运输重量属性的原因。我已经完成了所有微积分,现在我只需要存储运输重量,以便与Woocommerce表价运费插件一起使用。
答案 0 :(得分:0)
你必须告诉php你想在类变量上做到这一点
class WC_MyClass extends WC_Product {
function __construct() {
parent::__construct();
$this->data[] = "property1";
$this->data[] = "property2";
}
}
答案 1 :(得分:0)
如果您自己拥有扩展功能,则尚未创建WooCommerce类。您必须将类扩展添加到init挂钩,如下所示:
add_action( 'init', 'register_myclass' );
function register_myclass() {
class WC_MyClass extends WC_Product {
/*now you can override whatever you like*/
}
}