WordPress 性能优化:媒体库上传图片以时间戳重命名

编辑于:2023年05月07日

WordPress 性能优化:媒体库上传图片以时间戳重命名

WordPress 上传图片时,会在数据库遍历图片名称,重复则名称 +1 继续遍历,非常影响网站性能;如果名称是中文的,插入文章的图片链接还将被系统自动转码,不够美观。

为了图片 URL 能统一和谐,以及提高网站的运行效率,我在 WordPress 上传图片时,以当前时间戳+随机码这种长度一致的纯数字,对图片进行重命名。

代码实现

方式一

/*对上传的图片以时间戳+随机码的形式重命名
**玩机大学 https://www.cccitu.com/5171.html
*/
add_filter('wp_handle_upload_prefilter', function($file){
//time() 为时间戳;mt_rand(200,999) 为随机生成 200-900 的 3 位数
	$file['name'] = time()."".mt_rand(200,999).".".pathinfo($file['name'] , PATHINFO_EXTENSION); 
	return $file; 
});

方式二

/*在保留图片原名称的基础上,加上时间戳和随机码,防止重复
**玩机大学 https://www.cccitu.com/5171.html
*/
add_filter('wp_handle_upload_prefilter', function($file){
	$file['name'] = time()."".mt_rand(200,999).'-'.$file['name']; 
	return $file; 
});

选择一种自己喜欢的命名方式,复制对应的代码到主题 functions.php 文件底部,保存生效。

相关推荐

暂无评论