您现在的位置是:芭奇站群管理系统 > 学习收录 > -> dede远程JPEG格式图片不能本地化的解决方法,可以增加类型进去

dede远程JPEG格式图片不能本地化的解决方法,可以增加类型进去

时间:2018-05-11 18:43

 问题一:

dedecms织梦默认对远程JPEG格式图片不能本地化,只需修改一个文件就可以,本文只针对复制采集远程jpeg格式图片不能本地化的修改。

第1步、后台附件设置,图片浏览器文件类型:jpg|gif|png|jpeg|bmp,注意添加jpeg

第2步、修改dede/inc/inc_archives_functions.php文件,搜索gif|jpg|png修改为gif|jpg|png|jpeg就可以了。

 

=============================

问题二:


对于http的远程图片本地化,dedecms能很好解决,但是碰到https的就无法本地化了,以下是解决办法:


找到  dede/inc/inc_archives_functions.php文件里面GetCurContent($body)这个函数,里面


preg_match_all("/src=[\"|'|\s]{0,}(http:\/\/([^>]*)\.(gif|jpg|png|jpeg|bmp))/isU",$body,$img_array);

$img_array = array_unique($img_array[1]);


这一段改为:


preg_match_all("/src=[\"|'|\s]{0,}(http:\/\/([^>]*)\.(gif|jpg|png|jpeg|bmp))/isU",$body,$img_array);
preg_match_all("/src=[\"|'|\s]{0,}(https:\/\/([^>]*)\.(gif|jpg|png|jpeg|bmp))/isU",$body,$img_array_https);

$img_array = array_unique($img_array[1]);
$img_array_https = array_unique($img_array_https[1]);
$img_array=array_merge_recursive($img_array,$img_array_https);

 

第二步:

if(!preg_match("#^http:\/\/#i", $value))
{
continue;
}


这一段代码改为:


if(!preg_match("#^http:\/\/#i", $value)&&!preg_match("#^https:\/\/#i", $value))
{
continue;
}


这样发文章就可以把https的远程图片也本地化了。