设置WordPress上传图片自动重命名的方法

2024-12-27 22:01 37 抢沙发 叭叭部落格

本文最后更新于2024年12月27日22:06 星期五,请注意资讯或者链接时效,如有失效请在文章评论区留言反馈。

写博客时,不希望上传的文件/图片的原始名字直接上传,我们可以通过技术手段使上传的文件自动重命名,随机按规则生成唯一的文件名,也可以防止重复,文件名是中文导致的问题。

代码一

上传文件时会以“年月日时分秒_id”的格式重命名文件,如“20241227210757_676ea6ad9b481.webp"

// 重命名WordPress上传的文件
function rename_uploaded_file($file) {
    $time = date("YmdHis");
    $unique_id = uniqid(); // 使用uniqid()函数生成唯一标识符
    $file_extension = pathinfo($file['name'], PATHINFO_EXTENSION);
    $file['name'] = $time . "_" . $unique_id . "." . $file_extension;
    return $file;
}
add_filter('wp_handle_upload_prefilter', 'rename_uploaded_file');

代码二

上传文件时会以“年月日时分秒_原始文件名的MD5哈希的前10个字符”的格式重命名文件如“20241227214815_8dc0c37e0d.webp”

// 重命名WordPress上传的文件
function rename_filename($filename) {
    $info = pathinfo($filename);
    $ext = empty($info['extension']) ? '' : '.' . $info['extension'];
    $name = basename($filename, $ext);
    $time = date("YmdHis"); // 获取当前时间
    return $time . "_" . substr(md5($name), 0, 10) . $ext; // 文件名包含时间和基于原始文件名的MD5哈希的前10个字符
}
add_filter('sanitize_file_name', 'rename_filename', 10);

使用方法

将以上代码加入到主题的functions.php文件中保存即可。

注意事项

以上代码任任选一个,切不可同时使用,修改代码方式,在更新主题后,自己添加的代码,一般是会覆盖的,所以升级主题可以先做好备份。

「点点赞赏,手留余香」

2人已赞赏

  • 匿名

    匿名

    ¥ 2.00
  • 匿名

    匿名

    ¥ 10.00
叭叭君给叭叭君打赏
×
予人玫瑰,手有余香
  • 2
  • 5
  • 10
  • 20
  • 50
2
支付

声明:本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

版权声明:
1、本站所有文章内容均来源于互联网,我站仅作收集整理,VIP/积分赞助/打赏等费用仅为维持网站正常运转;
2、本站部分文章、图片不代表本站立场,并不代表本站赞同其观点和对其真实性负责;
3、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报;
4、本站资源大多存储在云盘,如发现链接失效,请联系我们,我们会第一时间更新;
5、本站所有文章、图片、资源等均为收集自互联网,版权归原作者所有。仅作为个人学习、研究以及欣赏!请在下载后24小时内删除。共同维护和谐健康的互联网!如果您发现本站上有侵犯您的权益的作品,请与我们取得联系,我们会及时删除或者修改。

2024-12-27

2025-01-01

发表评论

扫一扫二维码分享
×
Dragon