wordpress有对象存储插件,但是在不保存本地文件时,wordpress重命名检查会异常,就是说如果同一天上传的文件名称相同,那么后上传的文件就会覆盖先上传的文件,就会导致先前的缩略图和文件对不上,而且先前的原文件丢失。
所以就要上传附件重命名,让他100%不重名。有什么办法呢?最好的就是时间戳加入到文件的重命名。我写的重命名函数如下,能解决文件重名问题。
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.time().$ext;
return $file;
}
比如我的1.png被上传重命名为:4a47a0db6e60853dedfcfdf08a5ca2491632714991.png
文件名有点长哈,32位MD5+10位时间戳,就42字符的文件,大家可以根据自己的需求精简一下。
那么问题来了,我是什么时候上传的文件呢?哈哈
已经向我用的oss插件作者提交了BUG。
© 版权声明
THE END
暂无评论内容