介绍两段代码,可以自动为通过wordpress上传的媒体文件重新命名,有需要的朋友可以收藏下。
使用方法很简单,将需要的代码添加到wordpress主题中的functions.php模板文件中即可。
代码一:通过MD5加密方式生成数字并重命名
此代码的命名规则是由系统自动生成的一个32位的MD5加密文件名,由于默认生成的32位文件名有点长,所以使用substr(md5($name), 0, 20) 截断将其设置为20位。
- 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);
代码二:按时间方式重命名
上传媒体文件时会以“年月日时分秒+千位毫秒整数”的格式重命名文件,如“20170829103320538.jpg”
- //wordpress上传文件重命名
- function git_upload_filter($file) {
- $time = date("YmdHis");
- $file['name'] = $time . "" . mt_rand(1, 100) . "." . pathinfo($file['name'], PATHINFO_EXTENSION);
- return $file;
- }
- add_filter('wp_handle_upload_prefilter', 'git_upload_filter');
附:手动为上传文件重命名的wordpress技巧。
上传时在电脑上选中所需文件,按F2键,然后直接输入你要命名的字母或数字,回车即可重命名。
原文链接:http://zmingcx.com/wordpress-upload-file-renaming.html