今天在用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底部。
上面这个代码








