前提说明
在我们使用 WordPress 发布文章时,经常都需要添加图片、多媒体什么的。然而,大家都知道 WordPress 是国外开发的,对于中文用户来说,在我们使用过程中,我们基本都会把图片命名为中文,由于 WordPress 的机制的原因,上传图片后可能出现图片显示不正常或者其他各种的问题,那么,如何才能让 WordPress 图片重命名呢?
解决方法
现在,360模板网就告诉大家一个 WordPress 优化技巧,让图片上传以后,文件能在我们上传的时候自动变成英文或数字。
选择下面任意一中格式的代码放置在当前使用主题的“functions.php ”文件中保存即可
注意:部分主题默认已支持自动重命名,如主题已支持,请不要重复添加!
优化代码
代码一:按时间重命名
上传文件时会以“年月日时分秒+千位毫秒整数”的格式重命名文件,如“20220524122221765.jpg”
//根据上传时间重命名文件
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;
}
代码二:用MD5加密生成数字并重命名
名称规则是由系统自动生成的一个32位的MD5加密文件名,由于默认生成的32位文件名有点长,所以使用substr(md5($name), 0, 20) 截断将其设置为20位。
//使用md5转码文件名
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;
}
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END