WordPress上传图片自动重命名的2个方法
默认我们在使用WordPress程序的时候,上传的图片或者附件文件都是我们上传的时候文件命名是什么样子的,文件名就是什么样子的。这样会有一个问题,比如我们随着内容的增加,可能是图片或者文件名称都是一样的重复,这样问题如何解决呢?比如我们可以让上传的文件都自动重命名。
第一、随机数字
在”WordPress无插件实现上传图片自动随机重命名”文章中,我们可以自动重命名随机的数字。
function rename_upload_img($file) {
$time=date(“Y-m-d H:i:s”);
$file[‘name’] = $time.””.mt_rand(100,999).”.”.pathinfo($file[‘name’] , PATHINFO_EXTENSION);
return $file;
}
add_filter(‘wp_handle_upload_prefilter’, ‘rename_upload_img’);
第二、随机MD5 32位字符
function rename_filename($filename) {
$info = pathinfo($filename);
$ext = emptyempty($info[‘extension’]) ? ” : ‘.’ . $info[‘extension’];
$name = basename($filename, $ext);
return substr(md5($name), 0, 20) . $ext;
}
add_filter(‘sanitize_file_name’, ‘rename_filename’, 10);
同理,我们还可以用随机的MD5 32位随机字符。基本上也是不会重复的。
我们可以选择其中一个办法添加到当前主题functions.php文件中,刷新换成即可生效。后面添加附件、图片的时候回自动重命名。