今天在用ACF的时候发现的一个问题,默认不带千分位符,然后就在网上找解决方案,最终在Stack Overflow上找到了完美的答案,直接贴上代码:
第一种是应用于所有字段
add_filter('acf/format_value/type=number', 'fix_number', 20, 3); function fix_number($value, $post_id, $field) { // 判断是否有值 if(!empty($value)){ // 格式化数字 $value = number_format($value); } return $value; }
第二种是只应用于某个字段
add_filter('acf/format_value/type=number', 'fix_number', 20, 3); function fix_number($value, $post_id, $field) { // 只对themeforest_sales字段格式化 if($field['name'] == 'themeforest_sales') { if(!empty($value)){ $value = number_format($value); } } return $value; }
比如:原先格式是12345,那么添加完代码后的显示格式为:12,345,注意这个代码后面没有加.00,需要的话可以在ACF插件里添加后缀。
使用方法就是把代码放到主题的functions.php底部。
上面这个代码