WordPress如何实现媒体图片上传后自动重命名

WordPress后台默认上传文件上传到服务器上面是不会改动文件名的,如果想要改动的话就必须到服务器或者ftp上面进行更改,这里提供两种方法让我们的WordPress对上传的媒体文件自动重命名

1、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');

代码解释:

1、$time=date("Y-m-d H:i:s")这个代表时间:年月日时分秒,如果不要时分秒,写成这样既可$time=date("Y-m-d")

比如当前时间为2022年03月25日18点56分30秒,$time输出的时间为2022-03-25-185630;

2、mt_rand(100,999)是生成一个介于 100 和 999 之间(包括 100 和 999)的随机整数;

3、pathinfo($file['name'], PATHINFO_EXTENSION);这个函数返回该文件的文件扩展名;

4、add_filter() 是WordPress的内置函数,可以挂载一个函数到指定的过滤器上,是用于过滤过滤器中的内容的,简单的说就是把原先默认的内容给“篡改”掉,当然是按照我们想要实现的意图篡改。

第二、随机MD5 20位字符

// WordPress上传图片重命名,20位随机md5的方式

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位数,用到了substr函数截取前20个字符作为文件名。

系统应用

Guest Posts:高端外链策略

Guest Posts直译为“客座文章”或“客座日志”,简单说来就是我要在某个知名的高权重博客上发表文章,通过这个博客的知名度和读者群来推广自己的博客或网站,从而获得高质量的流量和Backlink。当...
weinxin
我的微信
我的微信
微信扫一扫
 
admin
  • 本文由 admin 发表于 2023年4月16日
  • 转载请务必保留本文链接:https://www.cismin.cn/197.html