现在的位置: 首页 > WP 专题 > 正文

自动为wordpress上传文件重命名

2017年08月29日 WP 专题 ⁄ 共 946字 ⁄ 字号 暂无评论 ⁄ 阅读 51 次

介绍两段代码,可以自动为通过wordpress上传的媒体文件重新命名,有需要的朋友可以收藏下。

使用方法很简单,将需要的代码添加到wordpress主题中的functions.php模板文件中即可。

代码一:通过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);

代码二:按时间方式重命名

上传媒体文件时会以“年月日时分秒+千位毫秒整数”的格式重命名文件,如“20170829103320538.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');

附:手动为上传文件重命名的wordpress技巧

上传时在电脑上选中所需文件,按F2键,然后直接输入你要命名的字母或数字,回车即可重命名。

原文链接:http://zmingcx.com/wordpress-upload-file-renaming.html

给我留言

留言无头像?


×