wordpress不在本地保存文件会出现的问题

        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

wordpress不在本地保存文件会出现的问题  第1张

       文件名有点长哈,32位MD5+10位时间戳,就42字符的文件,大家可以根据自己的需求精简一下。

         那么问题来了,我是什么时候上传的文件呢?哈哈

 

        已经向我用的oss插件作者提交了BUG。

wordpress不在本地保存文件会出现的问题  第2张

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享