这是一个过滤器,我用它来防止我的客户在他们的文件名中添加特殊字符,应该对你有用——不过你必须重新加载文件。
/**
/* Sanitize Uploaded Filenames
/* @param array $file
/* @return array $file
*/
function sanitize_file_uploads( $file ){
$file[\'name\'] = sanitize_file_name($file[\'name\']);
$file[\'name\'] = preg_replace("/[^a-zA-Z0-9\\_\\-\\.]/", "", $file[\'name\']);
$file[\'name\'] = strtolower($file[\'name\']);
add_filter(\'sanitize_file_name\', \'remove_accents\');
return $file;
}
add_filter(\'wp_handle_upload_prefilter\', \'sanitize_file_uploads\');
此函数仅允许数字、数字、下划线、破折号和句点。它将其转换为小写,并通过
accents function.