php – WooCommerce无法从产品类访问购物车

我有一个自定义的WooComerce产品类型,我需要从其中访问购物车网址.

看起来很简单:

class WC_Product_My_Product extends WC_Product_Simple {

 public function some_method() {
  global $woocommerce; 
  $href = $woocommerce->cart->get_cart_url();     
 }
}

然而:

Fatal error: Call to a member function get_cart_url() on a non-object

什么可能是错的?

在定义自定义产品类时,$woocommerce变量是否不可用?

如果是这样,是否有一些内部方法/变量来访问它? (或者特别推车?)

解决方法

Updated for WC 3+

使用$woocommerce-> cart = new WC_Cart();创建一个新的对象实例显然是避免错误解决方案:

class WC_Product_My_Product extends WC_Product_Simple {

    public function some_method() {
        WC()->cart = new WC_Cart();
        $href = WC()->cart->get_cart_url();     
    }
}

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...