IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    WordPress上传文件自动重命名

    知更鸟发表于 2017-03-15 08:15:33
    love 0

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

    源代码:http://www.lmlblog.com/2147.html

    代码二,用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);

    源代码:http://www.boke8.net/wordpress-auto-rename-file.html

    使用方法

    将代码添加到当前主题functions.php模板文件中即可。

    以上代码,很方便,节省时间。

    其实也可在电脑上全选文件,按F2,然后直接输入字母或者数字,回车重命名的方法也很方便。



沪ICP备19023445号-2号
友情链接