今天主题盒子为大家分享一个WordPress实现上传文件自动重命名方法。
1.按时间重命名
上传文件时会以“年月日时分秒+千位毫秒整数”的格式重命名文件,如“20201012104831765.jpg”
//wordpress上传文件重命名
function git_upload_filter($file) {
$time = date(“YmdHis”);
$file[‘n**e’] = $time . “” . mt_rand(1, 100) . “.” . pathinfo($file[‘n**e’], PATHINFO_EXTENSION);
return $file;
}
add_filter(‘wp_handle_upload_prefilter’, ‘git_upload_filter’);
2.用MD5加密生成数字并重命名
名称规则是由系统自动生成的一个32位的MD5加密文件名,由于默认生成的32位文件名有点长,所以使用substr(md5($n**e), 0, 20) 截断将其设置为20位。
function ren**e_filen**e($filen**e) {
$info = pathinfo($filen**e);
$ext = emptyempty($info[‘extension’]) ? ” : ‘.’ . $info[‘extension’];
$n**e = basen**e($filen**e, $ext);
return substr(md5($n**e), 0, 20) . $ext;
}
add_filter(‘sanitize_file_n**e’, ‘ren**e_filen**e’, 10);
使用方法
将代码添加到当前主题functions.php模板文件中即可。
暂无评论内容