WooCommerce 无法从产品 class 访问购物车
WooCommerce cannot access cart from product class
我有一个自定义的 WooComerce 产品类型,我需要从其中访问购物车 url。
看起来很简单:
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
变量是否不可用 class?
如果是这样,是否有一些内部方法/变量可以访问它? (或者特别是购物车?)
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();
}
}
我有一个自定义的 WooComerce 产品类型,我需要从其中访问购物车 url。
看起来很简单:
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
变量是否不可用 class?
如果是这样,是否有一些内部方法/变量可以访问它? (或者特别是购物车?)
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();
}
}