在wordpress上传之前重命名图像

时间:2014-05-21 16:24:12

标签: php wordpress file-upload

我在wordpress中有一个博客,我在每个帖子上传多个图像,但它会导致我发出问题。

如果文件名有空格,特殊字符或类似的东西,它就打破了上传。此问题也覆盖了我的同名文件。例如:首先我上传一张文件名为“car.png”的照片。然后我上传其他图像同名“car.png”,它会显示我上传的第一张照片。

我想先使用日期哈希(上传时间为年,月,日,时,分和秒)重新命名上传的文件。

如何使用钩子或编解码器功能?

问候。

1 个答案:

答案 0 :(得分:1)

这是我总是添加到WP主题函数文件中的函数:

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');

修剪,删除特殊的未接受字符,将名称转换为小写,然后删除重音。希望它适合你!