找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1466|回复: 0
打印 上一主题 下一主题

DEDECMS 自动缩略图无法生成问题的解决方法

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-13 20:41:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

网上找了一天时间,原来是DEDE的BUG,官方坛子里还没有解决办法,
自己动手,找办法
自动缩略图没有生成(_lit文件),这个是因为传递给GetDDImage函数的目录名不正确,根本原因是因为提取$body中的图地址时给$cfg_medias_dir加入了转义字符
下面把解决办法说明如下:
修改/dede 目录下的article_add_action.php 和article_eidt_action.php 两个文件,在文件中找到//自动获取缩略图 这一段代码.改为以下部分,另外原程序中 自动取的是最后一张图,我改了一下,自动取第一张/最后一张都可以.注释掉不需要的那个就行,
复制代码代码如下:
//更正的代码如下:已在FreeBSD/Apache2.2.4/PHP5.2.3测试通过
//自动获取缩略图
if($autolitpic==1 && $litpic==''){
//自动从第一张图生成
$picname = preg_replace("/.+?".str_replace('/','\/',$cfg_medias_dir)."(.+?)( |\"|').*$/is",$cfg_medias_dir."$1",$body);
//自动从最后一张图生成
//$picname = preg_replace("/.+?".str_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);
}
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端