由于特殊字符混乱,图像没有显示在wordpress上

时间:2015-07-07 18:08:38

标签: php wordpress special-characters

我的网站感染了恶意软件。在我清理我的网站后,我注意到由于特殊字符问题,一些wordpress图像没有显示。例如,这是FTP上显示的图像名称

sandí-a-asd-123.jpg

但是,如果我通过此路径访问URL,则仍然无法访问

mysite/imagepath/sandÃ-a-asd-123.jpg

只能通过此路径访问

mysite/imagepath/sandÃ%C2%ADa-asd-123.jpg

现在我该怎么办?我应该更改wordpress DB中的所有图像名称还是应该通过FTP更改名称?

由于

1 个答案:

答案 0 :(得分:0)

此wordpress功能适用于我:从图片名称中删除所有特殊字符。希望它有所帮助:D

functions.php

中添加代码
function sanitize_filename_on_upload($filename) {
$ext = end(explode('.',$filename));
// Replace all weird characters
$sanitized = preg_replace('/[^a-zA-Z0-9-_.]/','', substr($filename, 0, -(strlen($ext)+1)));
// Replace dots inside filename
$sanitized = str_replace('.','-', $sanitized);
return strtolower($sanitized.'.'.$ext);
}

add_filter('sanitize_file_name', 'sanitize_filename_on_upload', 10);