• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    dedecms5.7 不能自动提取第一张图片为缩略图 最实
    POST TIME:2017-11-13 01:35

    额 dedecms很坑爹的 昨天我写了一篇不能提取缩略图之后发现还有点问题

    后来又继续找,现在才找到问题

    在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;

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

    基本就可以解决问题了

    
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!