DedeCMS在后台发布文章更新后,就自动恢复到没修改之前原来的状态
dedecms具有很好的生成HTML功能,在后台主页面中也添加了一键更新功能,不过,由于DEDECMS后台功能比较完善,可以自动添加自定义文档,而这些文档的更新,必须在单页文档管理栏目下才能完成,点击生成/一键更新无法更新
因此我在后台的文件中填上了以下代码,使得dede自定义文档在更新网站时能够自动完成更新
后台文件 默认/dede/ 目录下
makehtml_allphp
更改位置
144行:源文件
else if($step==10)
{
$adminID = $cuserLogin->getUserID();
$mkcachefile = DEDEDATA"/mkall_cache_{$adminID}php";
@unlink($mkcachefile);
OptimizeData($dsql);
ShowMsg("完成所有文件的更新!","javascript:;");
exit();
}//make step
修改为以下代码后
else if($step==10)
{
include_once(DEDEINC"/arcsgpageclassphp");
$dsql->Execute("ex","SELECT aid FROM `#@__sgpage` ");
$i = 0;
while($row = $dsql->GetArray("ex"))
{
$sg = new sgpage($row['aid']);
$sg->SaveToHtml();
$i++;
}
$adminID = $cuserLogin->getUserID();
$mkcachefile = DEDEDATA"/mkall_cache_{$adminID}php";
@unlink($mkcachefile);
OptimizeData($dsql);
ShowMsg("完成所有文件的更新!","javascript:;");
exit();
}//make step
通过更改以上代码,既可以使得dedecms的一键更新成为真正意义上的一键更新
你可以直接在后台更改文件,更新后就不会恢复原来页面内容,或者更改你放程序的地方修改,比如我放程序的地方在E:\locilweb\xampp\htdocs这个文件夹下面,把想要修改的文件放到dw里面更改后再更新一下就不会出现这种问题了,我一般选择第二种,比较方便。
你修改的是网站自动生成后的文件 ,并没有从后台修改数据库里面的东西。这样是不行的。
因为每次更新后,系统会自动调用后台数据库里面的数据,把网站前台的所有文件全部更新掉。所以你改的前台文件,也就恢复到原来的样子了。
你的做法是:进入网站后台,找到相应的栏目,进行修改。
然后,在后台“生成” 前台文件。这样就行了。
0条评论