DedeCMS 5.1 版缩略图修改补充
DedeCMS 5.1 版缩略图修改补充
发布时间:2016-12-26 来源:查字典编辑
摘要:勾选“提取第一张图片为缩略图”实际是将第一张图当作缩略图并没有生成带"_lit"的小图修改文件:dedeaction...

勾选 “提取第一张图片为缩略图” 实际是将第一张图当作缩略图 并没有生成带"_lit"的小图

修改文件:dedeactionarticle_add_action.php

先看原代码

//自动获取缩略图

if($autolitpic==1 && $litpic==''){

$litpic = GetDDImgFromBody($body);

}

大概意思应该就是“缩略图=获取图像从主题内容”

也就是上面说的实际是第一张原图 这就是问题所在

参考了4.X里提取缩略图代码,更改为:

//自动获取缩略图-改

if($autolitpic==1 && $litpic==''){

$cfg_medias_dir = str_replace('/','/',$cfg_medias_dir);

$picname = preg_replace("/.+?".$cfg_medias_dir."(.*)( |"|').*$/isU",$cfg_medias_dir."$1",$body);

if(eregi(".(jpg|gif|png)$",$picname)){

if(ereg("_lit.",$picname)) $litpic = $picname;

else $litpic = GetDDImage('ddfirst',$picname,0);

}

}

同理dedeactionarticle_eidt_action.php更改为:

//自动获取缩略图-改

if($autolitpic==1 && empty($litpic)){

$cfg_medias_dir = str_replace('/','/',$cfg_medias_dir);

$picname = preg_replace("/.+?".$cfg_medias_dir."(.*)( |"|').*$/isU",$cfg_medias_dir."$1",$body);

if(eregi(".(jpg|gif|png)$",$picname)){

if(ereg("_lit.",$picname)) $litpic = $picname;

else $litpic = GetDDImage('ddfirst',$picname,0);

}

}

然后将这两个文件 复制覆盖到dede下。

OK!这样就能打到勾选“提取第一张...”生成缩略图的目的了。

缩略图变形 参考[Dedecms生成漂亮整齐的缩略图]

需修改文件:includeinc_photograph.php

找到:($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); 共三处。

改为:($ni,$im,0,0,$src_X,$src_Y,$ftoW,$ftoH,$srcW,$srcH);

修改了缩图函数,就能在原图中截取居中的、最大面积的符合自定义缩略图长宽比列的一部分生成缩略图。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新dedecms学习
热门dedecms学习
CMS教程子分类