WordPress上传图片自动重命名

大家都知道 WordPress 是舶来物,对于中文用户来说,我们都会把图片命名为中文的,由于 WordPress 机制的原因,并不能正常的显示图片或者各种的问题。那么,如何让 WordPress 图片自动重命名然后正常显示使用呢?

一、根据上传的时间命名

效果是形成类似于:2018041510182866.xxx,表示2018年4月15日10时18分28秒上传的,最后两位数字66是10到99之间的随机数,xxx表示文件类型后缀。
在主题function.php里添加

1
2
3
4
5
6
7
8
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
    $info = pathinfo($file['name']);
    $ext = $info['extension'];
    $filedate = date('YmdHis').rand(10,99);//为了避免时间重复,再加一段2位的随机数
    $file['name'] = $filedate.'.'.$ext;
    return $file;
}

二、文件名md5转码为32位字符串

效果是形成类似于:f78c857f04e596f4e7bcd36fddf2769f.xxx

1
2
3
4
5
6
7
8
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
    $info = pathinfo($file['name']);
    $ext = '.' . $info['extension'];
    $md5 = md5($file['name']);
    $file['name'] = $md5.$ext;
    return $file;
}

这两种方法都是不错的,个人更喜欢第一种,比较有一定的逻辑性,至于32位字符我不作评价,记住只能选一种哦!

本文目前:1 条留言  其中,访客:1 条  博主:0 条

  1. 跨境电商教程

    说的真好,顶一个

给我留言