我的函数导致错误 «WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong»。我已经了解了同样的问题,但仍然找不到我的函数中错误调用的位置,请帮助。Woocommerce 4.3。这是函数:add_action( 'init', 'loyal_customer_auto_coupon', 10, 1);function loyal_customer_auto_coupon(){ if ( is_user_logged_in() ) { $customer = get_current_user_id(); $acf_user = 'user_' . $customer; $loyal = get_field('loyal_customer_coupon', $acf_user); if ($loyal == '') { $all_orders = wc_get_customer_order_count( $customer ); if ( $all_orders > 4 ) { $args = array( 'customer_id' => $customer ); $orders = wc_get_orders($args); $completed_order_count = 0; foreach ($orders as $order) { if ( $order->status == 'completed' ) { if ( $order->total > 14.99 ) { $completed_order_count++; } } } } } }}
1 回答
杨__羊羊
TA贡献1943条经验 获得超7个赞
由于无法直接访问 WooCommerce 3 对象属性,因此您将使用WC_Order
方法。所以在你的代码中,替换
$order->status
经过$order->get_status()
$order->total
经过$order->get_total()
它应该可以解决你的问题。
- 1 回答
- 0 关注
- 80 浏览
添加回答
举报
0/150
提交
取消