最近有人反映DedeCMS后台广告管理模块里面修改了广告代码时,无论是生成页面还是更新缓存,前台页面中的广告代码就是不更新,那这到底是为什么呢?经过仔细分析,发现是调用缓存,是dedecms的ad_edit.php编辑保存信息后又没有删除原来的缓存信息,算是一个BUG吧,这里给大家一个解决办法,具体修改如下:

找到并打开后台管理目录下的ad_edit.php,在大约第70行的位置找到如下代码:

1 $dsql->ExecuteNoneQuery($query);

2 ShowMsg("成功更改一则广告代码!",$ENV_GOBACK_URL);

修改成如下代码:

1 $dsql->ExecuteNoneQuery($query);

2 // 删除广告缓存文件 begin

3 if(file_exists(DEDEDATA."/cache/myad-$aid.htm")){

4 @unlink(DEDEDATA."/cache/myad-$aid.htm");

5 }

6 // 删除广告缓存文件 end

7 ShowMsg("成功更改一则广告代码!",$ENV_GOBACK_URL);