Change filename during upload

时间:2013-03-09 作者:Milo

我检查下面的答案,在上传过程中重命名文件,并尝试将其更改为类似postid\\u originalfilename的内容。jpg但失败。有什么帮助吗?

function make_filename_hash($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_hash\', 10);

https://stackoverflow.com/questions/11586284/rename-files-on-upload-in-wordpress-3-4-1

1 个回复
最合适的回答,由SO网友:birgire 整理而成

如果要使用上述sanitize_file_name 过滤器,您可以尝试以下操作:

function make_filename_hash($filename) {

    if( isset($_REQUEST[\'post_id\']) ) {
        $post_id =  (int)$_REQUEST[\'post_id\'];
    }else{
        $post_id=0;
    }

    $info = pathinfo($filename);
    $ext  = empty($info[\'extension\']) ? \'\' : \'.\' . $info[\'extension\'];
    $name = basename($filename, $ext);

    if($post_id>0){
        return $post_id."_".$name . $ext;
    }else{
        return $name . $ext;
    }
}
add_filter(\'sanitize_file_name\', \'make_filename_hash\', 10);
例如,其中image.jpg 已更改为123_image.jpg 其中123是父岗位id。

结束

相关推荐

how to edit attachments?

在将例如文件附加到帖子时,如何在事后编辑/删除它们?在帖子编辑器中找不到任何内容。谢谢