前言
在WordPress网站管理中,上传图片是常见操作。然而,默认情况下,WordPress会保留上传图片的原始文件名,这可能会导致一些问题,如文件名重复、中文名称乱码等。为了提高网站管理效率和安全性,我们可以通过自动重命名上传的图片来优化这一过程。本文将详细介绍如何在WordPress中用代码的方式实现图片自动重命名。
开始教程
1. 添加函数代码
以子比主题为例,在主题目录下:wp-content/themes/zibll/functions.php
文件最下方添加以下代码。
格式一:年月日+时分秒+5位随机字符串。
add_filter('sanitize_file_name', 'zhuige_new_filename', 10);
function zhuige_new_filename($filename) {
// 获取当前日期时间
$datetime = date('Ymd-His');
// 生成5位随机字符串
$randomStr = substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'), 0, 5);
// 获取文件扩展名
$info = pathinfo($filename);
$ext = empty($info['extension']) ? '' : '.' . $info['extension'];
// 拼接新的文件名
return $datetime . '-' . $randomStr . $ext;
}
格式二:文件名(不包含扩展名的部分)进行MD5加密,并截取前15个字符。
add_filter('sanitize_file_name', 'zhuige_new_filename', 10);
function zhuige_new_filename($filename) {
$info = pathinfo($filename);
$ext = empty($info['extension']) ? '' : '.' . $info['extension'];
$name = basename($filename, $ext);
return substr(md5($name), 0, 15) . $ext;
}
通过自动重命名上传的图片,可以提升WordPress网站的管理效率和安全性。以上介绍了两种实现方法,你可以根据自己的需求选择合适的方式。希望这篇文章能帮助你更好地管理WordPress网站。