WordPress上传图片自动重命名无需任何插件

2023年8月24日15:01:23WordPress上传图片自动重命名无需任何插件已关闭评论
广告也精彩

本教程不适合纯小白,适合会操作服务器或后台编辑主题的小伙伴。

在主题目录下functions.php文件最下面添加代码即可。通过多种方法实现WordPress上传图片自动重命名,方法如下:

方法一【按时间重命名】

上传文件时会以年月日时分秒+千位毫秒整数的格式重命名文件,如2022092102581286.jpg。如图

WordPress上传图片自动重命名无需任何插件

  1. //wordpress 上传文件图片按时间重命名重命名
  2. function git_upload_filter($file) {
  3.     $time = date("YmdHis");
  4.     $file['name'] = $time . "" . mt_rand(1, 100) . "." . pathinfo($file['name'], PATHINFO_EXTENSION);
  5.     return $file;
  6. }
  7. add_filter('wp_handle_upload_prefilter', 'git_upload_filter');

方法二【用 MD5 加密生成数字并重命名】

名称规则是由系统自动生成的一个 32 位的 MD5 加密文件名,由于默认生成的 32 位文件名有点长,所以使用substr(md5($name),0,20)截断将其设置为 20 位。

当然需要多少位修改括号内的20即可。

  1. //wordpress 上传文件图片 MD5 加密重命名
  2. function rename_filename($filename) {
  3.     $info = pathinfo($filename);
  4.     $ext = emptyempty($info['extension']) ? '' : '.' . $info['extension'];
  5.     $name = basename($filename$ext);
  6.     return substr(md5($name), 0, 20) . $ext;
  7. }
  8. add_filter('sanitize_file_name', 'rename_filename', 10);

 

 

 



微信扫描下方的二维码阅读本文

ts小陈