众所周知,DedeCMS后台“图片水印设置”里的“添加水印的图片大小控制”选项根本不起作用,导致缩略图也被加上水印,效果很难看,现在告诉你DedeCMS V5.6缩略图不加水印的方法技巧!

修改DedeCMS程序里的dede/inc/inc_archives_functi*****.php 文件 (dede为后台默认路径)
查找到:
//获取一个远程图片
function GetRemoteImage($url,$uid=0)

这个函数里面有一句:
@WaterImg($rndtrueName, 'down');
修改成:
//@WaterImg($rndtrueName, 'down');
再查找:
//获得文章body里的外部资源
function GetCurContent($body)
{
global $cfg_multi_site,$cfg_basehost,$cfg_basedir,$cfg_image_dir;

修改成:
//获得文章body里的外部资源

function GetCurContent($body) 
{ 
global $cfg_multi_site,$cfg_basehost,$cfg_basedir,$cfg_image_dir,$autolitpic,$litpic; 
$autolitpic = (empty($autolitpic) ? '' : $autolitpic); 


然后在这同一个函数里面查找到:

$value = trim($value); 
$rndFileName = $imgPath.'/'.$milliSecondN.'-'.$key.$itype; 
$fileurl = $imgUrl.'/'.$milliSecondN.'-'.$key.$itype; 
$rs = $htd->SaveToBin($rndFileName); 

在其下面添加:
//自动获取缩略图

if($autolitpic==1 && $litpic=='') 
{ 
$litpic = GetDDImgFromBody($body); 
} 

最后一步:
查找到:
//处理HTML文本
//删除非站外链接、自动摘要、自动获取缩略图

function AnalyseHtmlBody($body,&$description,&$litpic,&$keywords,$dtype='') 
{ 
global $autolitpic,$remote,$dellink,$autokey,$cfg_basehost,$cfg_auot_description,$id,$title,$cfg_soft_lang; 
$autolitpic = (empty($autolitpic) ? '' : $autolitpic); 
$body = stripslashes($body); 
//远程图片本地化 
if($remote==1) 
{ 
$body = GetCurContent($body); 
} 
//删除非站内链接 
if($dellink==1) 
{ 
$basehost = "http://".$_SERVER['HTTP_HOST']; 
$body = str_replace($cfg_basehost,'#basehost#',$body); 
$body = str_replace($basehost,'#2basehost2#',$body); 
$body = preg_replace("/(]*)>)|(<\/a>)/isU","",$body); 
$body = str_replace('#basehost#',$cfg_basehost,$body); 
$body = str_replace('#2basehost2#',$basehost,$body); 
} 
//自动摘要 
if($description=='' && $cfg_auot_description>0) 
{ 
$description = cn_substr(html2text($body),$cfg_auot_description); 
$description = trim(preg_replace('/ 
/','',$description)); 
$description = addslashes($description); 
} 


在这个下面的:
//自动获取缩略图

if($autolitpic==1 && $litpic=='') 
{ 
$litpic = GetDDImgFromBody($body); 
} 

修改成:

//自动获取缩略图

//if($autolitpic==1 && $litpic=='') 
//{ 
//$litpic = GetDDImgFromBody($body); 
//} 


好了大功告成!

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