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

标签 php wordpress class woocommerce hook-woocommerce

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

WC_Product not found.

这是我的代码:

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

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

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

文档:WC_Product class - $data property

最佳答案

如果您有自己的扩展功能,则还不会创建 WooCommerce 类。您必须将类扩展添加到 init Hook 或 woocommerce_init,如下所示:

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

关于php - 在自定义插件错误问题中扩展 WC_Product 类(找不到 WC_Product 类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46182220/

相关文章:

c++ - 不同的 C++ 类声明

c++ - 在 C++ 中的类外声明函数有什么好处?

php - 从 Magento 导出订单以便装运

php - 在 yii2 中创建动态类变量

php - 无法在 WooCommerce 中获取产品重量

html - div 类的最后一个 child

c++ - 编译器向空类声明添加了什么?

php - Laravel Eloquent : Nested Query Builder?

php - Silex Controller 上的构造函数注入(inject)

php - (Wordpress) 不规则的 3-4-3-4 帖子结构