织梦dedecms5.7不能自动提取第一张图片为缩略图 最有效的解决方

网上好像很多人都有这样的问题,刚刚开始可以,后来就不行了 百度了好几页 各种改法,各种尝试,后来其实只要改一句代码就可以了 可能是因为服务器上禁用了fsockopen() 函数造成的,在用fsockopen()的地方用 stream_socket_client()代替就可以了。 具体修改地方

网上好像很多人都有这样的问题,刚刚开始可以,后来就不行了


 

百度了好几页

各种改法,各种尝试,后来其实只要改一句代码就可以了

可能是因为服务器上禁用了fsockopen() 函数造成的,在用fsockopen()的地方用 stream_socket_client()代替就可以了。

具体修改地方是 /include/dedehttpdown.class.php 第507行

$this->m_fp = @fsockopen($this->m_host, $this->m_port, $errno, $errstr,10);
替换为
$this->m_fp = @stream_socket_client($this->m_host . ‘:’ . $this->m_port, $errno, $errstr,10);
 

后来发现可能还有点问题

如果大家做了上面的操作还不行 可以参考下面

在dede/inc/inc_archives_functions.php的第505行

if($GLOBALS[‘cfg_ddimg_full’]==‘Y’) @ImageResizeNew($oldpic,$cfg_ddimg_width,$cfg_ddimg_height,$cfg_basedir.$litpic);

else @ImageResize($oldpic,$cfg_ddimg_width,$cfg_ddimg_height,$cfg_basedir.$litpic);

   if(!is_file($cfg_basedir.$litpic)) $litpic = ;

 

这里调用了@ImageResize函数对图片进行缩小,并将缩小的图片另存为$litpic。但实际上ImageResize函数会再对图片缩小 的尺寸进行判断,如果原图已经小于目标尺寸,则不进行缩放直接返回。导致并未进行另存为$litpic的操作。如此一来$litpic的文件并未生成,根 据上述代码的最后一行,自然就返回空值。

因此,解决办法有二:

一是在系统基本参数-附件设置中将缩略图的宽度跟高度都设为一个较小的值,以确保大部分的图片都会进行缩小。

二是把上述最后一行改为

     if(!is_file($cfg_basedir.$litpic)) $litpic = $oldpic;

 

意思就是如果不存在缩略图文件,则返回原图作为缩略图。

 

基本就可以解决问题了

 

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

本文实例讲述了Dedecms获取登录用户名与ID号的方法。分享给大家供大家参考。具体方法如下: 获取当前登录用户名 1、include/arc.archives.class.php在第9行下面加入下面这段代码: require_once(../member/config.php); 2、模板文件,就可以用下面的代码,来获
最近用DedeCMS做商城的时候,需要运用到全站都需要调用购物车数量的情况,但是找遍了网上的帖子无果,其实复制来复制去真没意思,用审查工具查看后,调用的JS显示的是出错的。如果你的错误是: Parse error: syntax error, unexpected in E:\APMServ5.2.6\ww
本来这个功能是一个朋友要做的,因为,之前从没有接触过excel,这个功能也没有研究过,但是,这个功能比较实用的,因为,很多公司虽然有网站,但是,公司其它部门可能还要把公司数据导出到纸上面,以便研究公司数据之用,所以,很多的公司对这个功能就要求使
由于dede默认只生成一个规格大小的缩略图,而往往在一个站不同页面内需要的缩略图大小不一致,比例不一致,这就造成了缩略图不清晰,失真,下面提供的方法就完美解决了这个问题。
当下一个dedecms做的网站我需要一个功能,就是获取当前栏目的上级栏目名称和链接 ,经过网上查找,已经实现,我把相关代码贴出来,希望能帮助更多的朋友。 Markup {dede:field name=typeid runphp=yes}/*title:获取栏目的上级栏目链接地址*/global $dsql;/*
回想起上一个网站就是这么做的, 点击内容中的图片进入下一页 ,接下来说一下dede 5.7 文章中点击图片切换到下一页方法。 首先找到include/arc.archives.class.php 修改这个文件,修改前请先备份。 一、查找解析模板,对内容里的变动进行赋值在这段话上面添