0
创建付款计划时,WooCommerce存款插件允许输入付款金额等十进制数字,例如33.33%。但是,在保存付款计划时,小数点将被剥离,只留下整数(本例中为33%)。如果创建3个同等付款的付款计划,总结果只有99%,失去了产品价格的1%。WooCommerce存款插件不允许付款计划金额的小数
如何在付款计划金额中使用小数?
创建付款计划时,WooCommerce存款插件允许输入付款金额等十进制数字,例如33.33%。但是,在保存付款计划时,小数点将被剥离,只留下整数(本例中为33%)。如果创建3个同等付款的付款计划,总结果只有99%,失去了产品价格的1%。WooCommerce存款插件不允许付款计划金额的小数
如何在付款计划金额中使用小数?
检查代码后,这里是我的发现:
在类-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']);
我希望这可以帮助他人。
什么是问题? – jww
这对于插件作者来说似乎是一个很好的问题/评论。你有没有尝试联系WooCommerce支持? – helgatheviking