在创建付款计划时,WooCommerce Deposits插件允许输入十进制数字,例如33.33%作为付款金额。但是,在保存付款计划时,小数会被剥离,只留下整数(在此示例中为33%)。如果创建3等付款的付款计划,则总结果仅为99%,损失了产品价格的1%。
如何在付款计划金额中允许小数?
答案 0 :(得分:0)
检查完代码后,我发现了以下内容:
在课程-wc-deposits-plans-admin.php的第133行,计划金额通过' absint'。
$plan_amounts = array_map( 'absint', $_POST['plan_amount'] );
此函数确保输入的数字变为正数或整数,但也会删除任何小数。我通过删除' absint'来解决问题。函数并用一个更有用的函数替换它,它是一个用于格式化小数的woocommerce函数。
$plan_amounts = array_map( 'wc_format_decimal', $_POST['plan_amount'] );
我希望这有助于其他人。