php order不管用,php – WooCommerce – get_order()不起作用,它返回零

我正在创建一个使用WooCommerce的在线商店,我正在添加一个功能,它将把我的数据库的奖励积分更新为absract-wc-payment-gateway.php.

这是我在做的事情:

>首先,在结账页面上,用户将点击下订单按钮,然后该方法将获得用户奖励积分,并使用get-total()减去奖励积分,然后更新到数据库并转到感谢你的页面.

hmsnD.png

>然后,感谢页面将从数据库中获得用户的奖励积分.并且我将奖励积分值设置为2000.所以在这种情况下,奖励积分应该减去总积分($50.00)

WWAee.png

这是我的代码.它将在用户单击下订单按钮时​​运行:

global $woocommerce;

$order = new WC_Order($order_id);

$total = $order->get_total();

$bonusPoint -= (int)$total; //minus total price and calculate the latest bonus point

$updateSql = "UPDATE userdata02 SET bonusPoint ='" .$bonusPoint. "' WHERE userID = 2147483647";

mysqli_query($link, $updateSql);// update to an int column

if(mysqli_query($link, $updateSql)) {

echo "Record updated successfully";

} else {

echo "Error update record: <>" . mysqli_error($link);

}

用户单击“放置”按钮时调用该方法:

public function get_return_url( $order = null ) {

if ( $order ) {

//$message = "wrong answer";

//echo "";

$return_url = $order->get_checkout_order_received_url();

} else {

$return_url = wc_get_endpoint_url( 'order-received', '', wc_get_page_permalink( 'checkout' ) );

}

if ( is_ssl() || get_option('woocommerce_force_ssl_checkout') == 'yes' ) {

$return_url = str_replace( 'http:', 'https:', $return_url );

}

self::reducePoints(); //Call reducePoints();

return apply_filters( 'woocommerce_get_return_url', $return_url, $order );

}

get_total()不起作用,返回零.

我做错了什么?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值