wordpress自动重命名上传文件的文件名

2025-09-21 12,192 0

使用wordpress的人可能都知道,wordpress是可支持文件中文的,可是在有时候在为了一些特殊功能时候,需要文件或者图片为非英文的,如果是文件很多,那一个一个的修改起来那不是很累吗,直接为所有上传图片重新命名为非中文的。
[h1]根据上传的时间命名[/h1]

[h2]举例说明[/h2]

如2017031610182866.xxx,表示2017年3月16日10时18分28秒上传的,最后两位数字66是10到99之间的随机数,xxx表示文件类型后缀。

[h2]具体实现方法[/h2]

将以下代码添加到所使用主题的functions.php 文件中最后一个?>的前面即可。

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;
}

[h1]文件名md5转码为32位字符串[/h1]

[h2]举例说明[/h2]

如 f78c857f04e596f4e7bcd36fddf2769f.xxx,原始文件名为admin.xxx。

[h2]具体实现方法[/h2]

将以下代码添加到所使用主题的functions.php 文件中最后一个?>的前面即可。

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;
}

[h1]小结[/h1]

以上两种方法实现WordPress上传图片自动重命名的方法只能二选一,不可同时使用两种方法,要不然出错的话后果自负哦。本文的两种方法都能成功实现,换句话说有了这两种方法之后,以后我们上传图片的时候再也不用担心图片文件名是中文或其他不合格的名称了,可以放心大胆地上传图片了。

相关文章

解决宝塔数据库变量 $cfg['TempDir'] (/www/server/phpmyadmin/phpmyad...
交互式网站与非交互式网站:核心差异与场景解析
重磅发布:Nginx 1.31.1 正式登场,核心安全修复与稳定性升级全解析
WordPress 7.0 正式版震撼发布!全新功能与性能优化全面解析
从0到1搭建你的第一个网站:域名、服务器与部署,一篇看懂
个人网站搭建指南:从零到部署,用最少代码搞定安全、快速与易维护

发布评论