欢迎来到361模板(www.ke361.com),原创精品织梦模板提供商。 网站托管 桌面收藏 网站定制

361模板网

当前位置:361模板网 > 技术文档 > 网站技巧 > 织梦dedecms5.7不能自动提取第一张图片为缩略图最实效的解决办法
这篇文章主要为大家详细介绍了织梦dedecms5.7不能自动提取第一张图片为缩略图最实效的解决办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

织梦dedecms5.7不能自动提取第一张图片为缩略图”,很少有朋友遇到这样的问题,但是还是偶尔会有这样的一两个。

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

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

可能是因为服务器上禁用了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;

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

基本就可以解决问题了。

以上就是本文的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持361源码网。

感谢打赏,我们会为大家提供更多优质资源!

热词标签:

上一篇DZ报错MySQL Query Error Errno:1046错误的解决办法

下一篇织梦标签嵌套 织梦大循环套小循环示例 循环调用多级栏目及内容列表

延伸阅读

《织梦dedecms5.7不能自动提取第一张图片为缩略图最实效的解决办法》期待您的评论!

评论功能暂时关闭!:)。
取消

感谢您的支持,我们会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

Powered by361模板网,分享从这里开始,精彩与您同在