注册 登录 欢迎您到模板精:织梦模板_dede模板_免费网站模板_网站源码下载

织梦教程_免费织梦模板下载_dede模板

该栏目分享织梦建站的基础知识,从织梦CMS的安装,到织梦标签的常规调用,以及织梦的常见问题答疑都有涉及。

当前位置:首页 > 织梦教程 >

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

免费网站模板 2021-03-08 15:23 织梦教程 评论


可能是出于安全等考虑,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优化