人间
总有一两风

wordpress上传文件怎么自动重新新命名?

有时候我们在wordpress后台上传文件后,希望文件能自动重新命名。我们一般可以通过主题自动功能进行重新命名,或者是通过其他其设置来自动重命名上传的图片或文件名称。下面就跟大家分享3种重命名上传图片或文件的方法:
将以下任一种方法中的代码添加到当前主题的functions.php文件中并保存更新文件即可。

在网站跟目录/wp-content/themes/当前主题/functions.php

把下面三个代码其中随一一个,添加在functions.php文件中。

方法一、文件名md5转码为15位字符串

// WordPress上传图片或文件自动重命名的方法
// https://themebetter.com/wordpress-upload-auto-filename.html
add_filter('sanitize_file_name', 'tbwp_new_filename', 10);
function tbwp_new_filename($filename) {
$info = pathinfo($filename);
$ext = empty($info['extension']) ? '' : '.' . $info['extension'];
$name = basename($filename, $ext);
return substr(md5($name), 0, 15) . $ext;
}

方法二、文件名md5转码为32位字符串

// WordPress 技巧:上传图片自动重命名的几种办法
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
$info = pathinfo($file['name']);
$ext = '.' . $info['extension'];
$md5 = md5($file['name']);
$file['name'] = $md5.$ext;
return $file;
}

方法三、根据上传的时间命名

// WordPress 技巧:上传图片自动重命名的几种办法
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
$info = pathinfo($file['name']);
$ext = $info['extension'];
$filedate = date('YmdHis').rand(10,99);//为了避免时间重复,再加一段2位的随机数
$file['name'] = $filedate.'.'.$ext;
return $file;
}

赞(0)
未经允许不得转载:乐予博客 » wordpress上传文件怎么自动重新新命名?
分享到: 更多 (0)