使用WP All Export为导出XML添加11%加价无返回结果求助
解决WP All Export价格加11%无返回结果的问题
核心问题分析
你写的代码逻辑本身没问题,但传入的$price参数大概率不是纯数字格式(比如包含货币符号$/€、千分位逗号,这类非数字字符),PHP无法直接对这类值做乘法运算,最终导致返回无效结果。
修正后的可用函数
<?php function shopflix_price($price){ // 清理价格字符串,只保留数字和小数点 $clean_price = preg_replace('/[^0-9.]/', '', $price); // 转换为浮点数,确保能正常计算 $clean_price = (float)$clean_price; // 计算加价11% $percentdiff = 11; $new_price = $clean_price * (1 + $percentdiff / 100); // 格式化价格为2位小数(适配电商常规价格格式) return number_format($new_price, 2); } ?>
额外注意事项
- 在WP All Export中调用该函数时,务必选择纯价格字段(比如产品的「Regular Price」或「Sale Price」,不要选带货币符号的前端显示字段)。
- 如果你的产品价格是整数(无小数部分),可以把
number_format的第二个参数改成0,保持2位小数也不会影响使用。
内容的提问来源于stack exchange,提问作者Angelos Provelengiadis
相关产品推荐
相关产品推荐

