查看: 37|回覆: 0

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

[複製鏈接]

2

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2010-9-2
發表於 2023-7-7 00:00:00 | 顯示全部樓層 |閲讀模式

网上找了一天时间,原来是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); 

回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部