Php 在自定义插件错误问题中扩展WC_产品类(未找到WC_产品类)

Php 在自定义插件错误问题中扩展WC_产品类(未找到WC_产品类),php,wordpress,class,woocommerce,hook-woocommerce,Php,Wordpress,Class,Woocommerce,Hook Woocommerce,我试图扩展WC_产品类,将“property1”和“property2”添加到受保护的数组$data中,但当我尝试运行插件时,会出现下一个错误: 未找到WC_产品 这是我的密码: class WC_MyClass extends WC_Product { function __construct() { parent::__construct(); array_push($data, "property1", "property2"); } }

我试图扩展WC_产品类,将“property1”和“property2”添加到受保护的数组$data中,但当我尝试运行插件时,会出现下一个错误:

未找到WC_产品

这是我的密码:

class WC_MyClass extends WC_Product {
    function __construct() {
        parent::__construct();
        array_push($data, "property1", "property2");
    }
}
我需要的是在我的插件中扩展WC_产品类

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


文档:

您必须告诉php您希望对类变量执行此操作

class WC_MyClass extends WC_Product {
  function __construct() {
    parent::__construct();
    $this->data[] = "property1";
    $this->data[] = "property2";
  }
}

如果您有自己的扩展函数,那么还不会创建WooCommerce类。您必须向
init
hook或
woocommerce\u init
添加类扩展,如下所示:

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

这并不能解决我的问题,问题是找不到WC_产品类。我认为问题与目录有关,但我不想修改Woocommerce文件,我想使用我自己的插件来修改Woocommerce的一些内容,因此我不知道如何访问WC_产品类。您是否在wordpress中添加并启用了插件?是的,事实上,我以前的插件没有任何问题,因为我没有扩展一个类。我只编写了插件的逻辑部分,但现在我想在Woocommerce类中直接存储一个值,但我需要在受保护的数组中添加一个新项来实现这一点,所以我想扩展该类。@ElisabetGonzález,你有没有找到一个可行的解决方案?我目前也面临同样的情况。我需要扩展WC_产品类,以便将一些元素添加到受保护的$data数组中,并添加一些新函数,但我无法使其正常工作。你能帮忙吗?也许
include_once(WC_ABSPATH.'includes/abstracts/abstractwc product.php')在类定义之前?你如何使用你的WC_MyClass?你是不是在跟踪WooCommerce<代码>添加_操作('init','my_wrapper_function')例如,如本文中所述:@pants我想我发现了问题,我有
添加动作('woocommerce\u在购物后添加商品,'myFunction',10)
但是我用
myFunction()
@jeger()编写了类部分,这给我带来了一个错误
警告:include\u once(WC\u ABSPATH/includes/abstracts/abstracts WC product.php):无法打开流
您可能需要在阅读此WooCommerce相关文档之前阅读:并且……您应该(可能是)解释你在WooCommerce中试图做什么(更新你的问题),以获得更准确的帮助。请查看此内容,但不确定是否是相同的问题