在使用Dedecms CMS时,许多朋友可能会遇到这样一个问题:在后台修改了广告代码后,前台的广告却没有随之更新。这通常是因为缓存问题导致的。本文将为您提供两种解决方案,帮助您轻松解决这一问题。 适合新手的解决方法:
对于刚刚接触Dedecms的新手来说,有一个简单易行的方法可以尝试。当您修改完广告代码后,可以在后台找到右侧的管理选项。管理下面有三个按钮:[JS] [更改] [删除]。此时只需点击[JS]按钮,即可预览这个JS广告。之后返回前台查看,广告应该已经自动更新了。
彻底解决的方法:
如果您希望避免每次修改广告后都需要手动预览的操作,可以对广告模块进行一些简单的修改。这种方法来源于论坛中一位朋友的经验分享,具体步骤如下: 安装DedeCms自带的广告模块后,如果发现修改广告信息后,前台调用的仍然是修改前的信息,那么很可能是由于缓存引起的。因为DedeCMS的ad_edit.php在编辑保存信息后,并没有清除原来的缓存文件。因此,我们需要手动添加一段代码来解决这个问题。 打开dede/ad_edit.php文件,找到以下代码:
$dsql->ExecuteNoneQuery($query);
ShowMsg("成功更改一则广告代码!",$ENV_GOBACK_URL);
将其修改为:
$dsql->ExecuteNoneQuery($query);
// 删除广告缓存文件 begin
// dedecms V57_GBK 2011-08-12
if(file_exists(DEDEDATA."/cache/myad-$aid.htm")){
@unlink(DEDEDATA."/cache/myad-$aid.htm");
}
// 删除广告缓存文件 end
ShowMsg("成功更改一则广告代码!",$ENV_GOBACK_URL);
完成上述修改后,保存文件即可。这样,在每次修改广告代码后,系统会自动清除相应的缓存文件,确保前台显示的广告内容是最新的。 通过以上两种方法,您可以根据自己的需求选择合适的解决方案,轻松应对Dedecms广告缓存问题。希望这些技巧能够帮助到正在使用Dedecms的朋友。