WordPress上传文件自动重命名

WordPress上传文件自动重命名

推荐两段在上传媒体文件时自动重命名的代码。
       代码一,按时间重命名

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

  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位。

  1. function rename_filename($filename) {
  2.     $info = pathinfo($filename);
  3.     $ext = emptyempty($info['extension']) ? '' : '.' . $info['extension'];
  4.     $name = basename($filename$ext);
  5.     return substr(md5($name), 0, 20) . $ext;
  6. }
  7. add_filter('sanitize_file_name', 'rename_filename', 10);

使用方法

将代码添加到当前主题functions.php模板文件中即可。
以上代码,很方便,节省时间。
其实也可在电脑上全选文件,按F2,然后直接输入字母或者数字,回车重命名的方法也很方便。

米粒在线
  • 本文由 发表于 2017年4月13日09:19:41
  • 转载请务必保留本文链接:https://www.miliol.org/45703.html
wordpress主题

为了WordPress运行效率翻倍我用Cyberpanel替代了宝塔面板

因为我的博客最近这段时间总是莫名其妙的卡成狗,用的是应该是某个插件的原因,正好许久没折腾了就追求刺激,准备重新使用我以前心心恋恋的 openlitespeed,当初测试在都安装插件的情况下 NGINX...
网站建设

WordPress 在 NGINX 和 Litespeed 下的性能对比测试

都说 Wordpress 在 litespeed下的表现要好于 NGINX,但是很少看到有人做测试,于是我来做一个对比测试 测试平台 主机:腾讯云轻量HK1C2G 版 WordPress...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: