Dedecms5.7图集上传不修改原图片名称教程

相关案例演示

可能是出于安全等考虑,Dedecms程序上传图集后,会将文件名更改,例如更改成1-130409223432.jpg,但是根据Google对于图片的SEO优化指引,这样的图片文件名不太友好。

因此我想保留原有的图片文件名,例如beautiful_shoes.jpg。

网上有人说将dede目录下的swfupload.php中的$filename = $cuserLogin->getUserID().'-'.dd2char(MyDate('ymdHis', time()));改成$filename=$Filedata_name;

更改后,我发现上传后的文件多了一个后缀名,例如原来本地图片是beautiful_shoes.jpg,通过图集上传后成了beautiful_shoes.jpg.jpg,请问如何去掉这个多出来的这个jpg呢?

01 //保存原图
02     $filedir = $cfg_image_dir.'/'.MyDate($cfg_addon_savetype, time());
03     if(!is_dir(DEDEROOT.$filedir))
04     {
05         MkdirAll($cfg_basedir.$filedir, $cfg_dir_purview);
06         CloseFtp();
07     }
08     $filename = $Filedata_name;
09     if( file_exists($cfg_basedir.$filedir.'/'.$filename) )
10     {
11         for($i=50; $i <= 5000; $i++)
12         {
13             if( !file_exists($cfg_basedir.$filedir.'/'.$i.'-'.$filename) )
14             {
15                 $filename = $i.'-'.$filename;
16                 break;
17             }
18         }
19     }
20     $fileurl = $filedir.'/'.$filename;
21     $rs = copy($FiledataNew, $cfg_basedir.$fileurl);
22     unlink($FiledataNew);
23     if(!$rs)
24     {
25         echo "ERROR: Copy Uploadfile Error! ";
26         exit(0);
27     }
经过本站测试,通过此方法更改后,确实可以保证原文件名上传也不会修改,但有一个小问题,就是水印会失效,大家可以自己找找原因。

目前已经测试通过,IE9浏览器,FF火狐浏览器,GG谷歌浏览器 下 完美支持中文图片名,非常利于SEO优化

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。


来源:网友投稿 关注: 时间:2021-03-05 09:14
首先声明,只要是我们的vip会员所有源码均可以免费下载,不做任何限制(了解更多)
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ进行交流。
相关织梦教程
QQ在线咨询