WordPress在上传附件的时候,会检测附件的名称,自动对重名名字的附件做加法重命名,例如:"face.jpg",如果再传一张相同的“face.jpg”,那么第二张图将会被重命名为“face-1.jpg”。
还有一个问题是中文可能导致乱码,特别是Linux服务器,对编码要求非常严格,如大小写,也有可能部分Linux没有中文字体,附件就会出现乱码。
用 md5 去将附件进行重命名,这样既可以防止乱么,也不会出现"face-1.jpg"这种情况了。具体方法是在 WordPress主题 中的 functions.php 文件插入:
function make_filename_md5($filename) { $info = pathinfo($filename); $ext = empty($info['extension']) ? '' : '.' . $info['extension']; $name = basename($filename, $ext); return md5($name) . $ext; } add_filter('sanitize_file_name', 'make_filename_md5', 10);