织梦Dedecms上传中文文件不自动改名,保持原文件名的方法

相信用过 dedecms 的人都清楚这一点,就是上传的文件会自动被改名,当然,大多数的CMS程序都会是这样的功能。可是改名后的文件名失去了原始的直观性,特别当你的文件是用来让用户 […]



相信用过dedecms的人都清楚这一点,就是上传的文件会自动被改名,当然,大多数的CMS程序都会是这样的功能。可是改名后的文件名失去了原始的直观性,特别当你的文件是用来让用户下载的时候(比如报表、软件之类),用户下了你的文件,看文件名就是系统自动生成一串数字,没有什么实际意义,这个时候就要更改下这个机制了。有时下载的模板,软件类,保持下载文件的原始中文名。

这个做起来其实只要二行代码就可以搞定了,一个文件一个,很简单。

第一个是改发布内容的时候,通过ckeditor的附件功能上传文件改名。

打开主目录/include/dialog/select_soft_post.php,在if(!empty($newname))之前,也就是大约49行的位置,加入$newname = $uploadfile_name;

第二个是改附件管理中上传新文件后的更名机制

打开主目录/dede(管理目录)/media_add.php,在大约61行的位置,加入$filename = $upfile_name;然后注释掉下面四行代码:

1$filename = "{$adminid}_".MyDate("His",$uptime).mt_rand(100,999).$i;
2$fs = explode(".",${"upfile".$i."_name"});
3$filename = $filename.".".$fs[count($fs)-1];
4$filename = $savePath."/".$filename;



加载中~