Php WooCommerce无法从产品类访问购物车
我有一个自定义的Woocomece产品类型,我需要从其中访问购物车url 看起来很简单:Php WooCommerce无法从产品类访问购物车,php,wordpress,class,woocommerce,cart,Php,Wordpress,Class,Woocommerce,Cart,我有一个自定义的Woocomece产品类型,我需要从其中访问购物车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
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
变量是否不可用
如果是,是否有一些内部方法/变量来访问它?(特别是购物车?)
为WC 3更新+
使用$woocmerce->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();
}
}
谢谢,这也不起作用,但我添加了一些代码来提供更好的上下文。我在自定义产品类型内的方法中调用它class@DavidTonarini如果可能的话,你能用完整的答案编辑你的问题吗?这样,如果其他人偶然发现这个问题,他们就会知道你做了什么?谢谢@肖恩:当然可以,但公认的答案已经包含了所有代码。我认为标准做法是保留问题的原样,在这种情况下,答案已经包含代码?如果不是这样,我将编辑问题OK。当我读到您在解决方案下面的评论时,我觉得您需要添加更多代码才能使其正常工作。