实现WordPress上传图片自动重命名的两种方法
在我们使用 WordPress 发布文章时,经常都需要添加图片、多媒体什么的。
然而,大家都知道 WordPress 是舶来物,对于中文用户来说,我们都会把图片命名为中文的,由于 WordPress 机制的原因,并不能正常的显示图片或者各种的问题。
那么,如何让 WordPress 图片自动重命名然后正常显示使用呢?
现在,就和大家说说更加接地气一点的 WordPress 技巧,就是在我们上传图片的时候,能够让图片的名称自动变成英文或数字。
具体有根据上传时间命名和MD5转码文件名为32位字符串两种格式的文件命名方法,只能二选一。
一、根据上传的时间命名
1 2 3 4 5 6 7 8 | 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 ; } add_filter( 'wp_handle_upload_prefilter' , 'custom_upload_filter' ); |
二、文件名md5转码为32位字符串
1 2 3 4 5 6 7 8 | function custom_upload_filter( $file ){ $info = pathinfo ( $file [ 'name' ]); $ext = '.' . $info [ 'extension' ]; $md5 = md5( $file [ 'name' ]); $file [ 'name' ] = $md5 . $ext ; return $file ; } add_filter( 'wp_handle_upload_prefilter' , 'custom_upload_filter' ); |
食用方法
将代码添加到所使用主题的 functions.php 文件中即可。
以上两种方法实现WordPress上传图片自动重命名的方法只能二选一,不可同时使用两种方法,要不然出错的话后果自负哦。
共有 0 条评论