在使用Dedecms的过程中,我们发现了一个可能导致图集缩略图无法正常生成的问题。如果您正在使用Dedecms CMS,那么请务必关注以下内容,并及时采取措施解决问题。


问题的根源在于 dede/inc/inc_archives_functions.php 文件中的代码逻辑。具体来说,默认情况下,当多页单图时不会生成缩略图。程序对缩略图变量 $litpicname 的判断不够严格,导致其值被直接传递给 $firstdd。如果页面展示不是多行多列的形式,那么缩略图将永远为空值。这种情况下,发布图集时,图集的第一幅图的缩略图也将始终为空。



if($pagestyle > 2) {
    $litpicname = GetImageMapDD($iurl, $ddmaxwidth);
} else {
    $litpicname = '';
}
if(empty($firstdd) && !empty($litpicname)) {
    $firstdd = $litpicname;
    if(!file_exists($cfg_basedir . $firstdd)) {
        $firstdd = $iurl;
    }
}
    


为了解决这一问题,我们需要对 /dede/inc/inc_archives_functions.php 文件进行修改。具体操作如下:


找到以下代码:



@WaterImg($rndFileName, 'down');


将其替换为:



if($key == 0 && $firstdd == '' && $iurl) 
    $firstdd = GetImageMapDD($iurl, $ddmaxwidth); // 当缩略图为空时强制取第一张图片为缩略图
@WaterImg($rndFileName, 'down');


通过上述修改,当缩略图为空时,系统将自动选取第一张图片作为缩略图。这不仅解决了缩略图为空的问题,还确保了图集的展示效果更加完善。


截至目前,Dede官方尚未针对此问题发布正式的修复方案。因此,建议用户密切关注Dede官方动态,以便在官方更新后及时应用正式的解决方案。


希望以上内容能帮助您解决Dedecms图集缩略图无法生成的问题。如果您还有其他疑问或需要进一步的帮助,请随时联系我们。