2017-02-28 104 views
0

创建付款计划时,WooCommerce存款插件允许输入付款金额等十进制数字,例如33.33%。但是,在保存付款计划时,小数点将被剥离,只留下整数(本例中为33%)。如果创建3个同等付款的付款计划,总结果只有99%,失去了产品价格的1%。WooCommerce存款插件不允许付款计划金额的小数

如何在付款计划金额中使用小数?

+0

什么是问题? – jww

+0

这对于插件作者来说似乎是一个很好的问题/评论。你有没有尝试联系WooCommerce支持? – helgatheviking

回答

0

检查代码后,这里是我的发现:

在类-WC-存款 - 计划 - admin.php的133线,计划量是通过“absint”运行。

$plan_amounts = array_map('absint', $_POST['plan_amount']); 

此函数确保输入的数字成为正数或整数,但也会删除任何小数。我通过删除'absint'函数解决了这个问题,并将其替换为一个更有用的函数,即用于格式化小数点的woocommerce函数'wc_format_decimal'。

$plan_amounts = array_map('wc_format_decimal', $_POST['plan_amount']); 

我希望这可以帮助他人。