dede生成专题列表HTML模板文件不存在,无法解析文档!为什么会这样?
检查你的文件编码。还有你的标签的书写。php标签 需要后台开启才可以使用的。
页面的编码、文件的存储的编码、dedecms程序的编码要统一。
编码不能解析的原因,大部分是标签书写错误的原因。建议到dede默认的模板里直接复制。
利用模板。目前PHP的模板可以说是很多了,有功能强大的smarty,还有简单易用的smarttemplate等。它们每一种模板,都有一个获取输出内容的函数。我们生成静态页面的方法,就是利用了这个函数。用这个方法的优点是,代码比较清晰,可读性好。
这里我用smarty做例子,说明如何生成静态页:
<php
require("smarty/Smartyclassphp");
$t = new Smarty;
$t->assign("title","Hello World!");
$content = $t->fetch("templates/indexhtm");
//这里的 fetch() 就是获取输出内容的函数,现在$content变量里面,就是要显示的内容了
$fp = fopen("archives/2005/05/19/0001html", "w");
fwrite($fp, $content);
fclose($fp);
>
1,模板真的不存在,查看一下路径
2,简单来说,模板文件不存在,无法解析文档这个问题可能是由于系统安装在二级目录,在填写二级目录里出现错误,找不到模板。
解决办法是:到系统设置-核心设置-DedeCms安装目录
设置正确的路径,如果是根目录安装,则不需要填写任何内容。根目录安装切记留为空。
然后呢,比较有用的办法就是,更新系统缓存,乱七八糟的全更新一下,一般的问题全能搞定。
3,我在更新文档时出现这个错误,你们随便,我是直接去Include文件夹里搜寻“模板文件不存在,无法解析文档”这串字符。找到了arcarchivesclassphp这个文件。
我看了一下这个类,于是改了一下报错的代码。
echo
"模板文件不存在,无法解析文档!"
$this->ArcID;
这样可以返回错误的文章ID,于是,再生成时我得到了几个文章ID打开这个文章编辑,发现这篇文章居然没有设置分类。
挺奇怪的错误。设置文档栏目后问题解决!
dedecms模板更换方法一
将新模板覆盖templets下的文件最简单的更换模板的方法是直接覆盖templets目录下的所有文件,但是这样会导致原先的模板被覆盖。
dedecms模板更换方法二
通过后台管理,使DEDECMS去寻找模板目录
还有一种就是更换整个网站的模板目录。
系统管理
-->
站点设置
-->
默认模板风格
设置为目录名字
比如下载了一个新的模板,新模板目录为newtemplet
那么设置为
/newtemlet/default
这样基本模块的模板就会去该目录下寻找。
但是这样有一个问题,就是如果栏目已经创建好了,设置这个就会没有什么效果。不知道这是不是DEDE的一个BUG。
dedecms模板更换方法三
修改特定页面的模板
还有就是修改单独网页的模板,那么就去
频道管理
-->
网站栏目管理
-->
高级选项里选定模板地址
充分利用
/
这样的上级目录跳转到模板的目录下。
至于风格,我到现在看起来是不是必须修改模板里的CSS文件的地址?
dedecms模板更换方法四
修改源代码改变模板目录
发现另一种方法,更为直接:
修改include目录下的config_basephp下找到
$cfg_templets_dir
=
$cfg_cmspath'/templets';
只需要把这个修改为新的目录名字,然后HTML更新一下,所有的模板风格都改变了。
这种方法不推荐,不过你要是为了防止模板被盗到可以
还有个方法:把新模板直接上传到templets/default目录里,然后再点击栏目管理,在栏目高级参数那里选择新模板。
0条评论