dede后台文档生成不了html什么原因

dede后台文档生成不了html什么原因,第1张

1、DEDE后台“更新所有”、“更新栏目”、“更新文档”没反应或无法生成,如下图。

2、打开前端模板文件templets/。

3、查找templets/中的文件里面其中含{dede:fieldname='typeid'function="GetTopTypename(@me)" /} 或含有“GetTopTypename(@me)”的字段将整句删除,并保存。

4、恢复正常生成更新。

版本:DEDE所有版本,DEDE_v5,V53,V55

原因:要创建的目录或者文件没有写入权限

解决办法:

第一步,定位出错的文件,即查找生成什么文件时出的问题。

方法:修改 include/dedetagclassphp文件,搜索"DedeTag Engine Create File False",会找到以下代码

$fp = @fopen($filename,"w") or die("DedeTag Engine Create File False");

修改成

$fp = @fopen($filename,"w") or die("DedeTag Engine Create File False:$filename");

重新生成栏目或者文档时,即可提示当前文件信息。

第二步,找到提示错误的目录或者文件,检查是否有写入权限,windows服务器请给予写入权限,linux服务器请给予777权限。如果目录或者文件不存在,请手工建立。

常见的错误情况有,data目录没有写入权限,html静态文件目录没有写入权限,indexhtml首页静态文件没有写入权限。

警告:此修改操作可能会暴露程序目录结构信息,建议解决问题以后,还原程序文件。

存在这样的原因主要有:栏目的内容页模板不存在线下;

解决方法:

1、进入属于这个文章的栏目,点击更改,查看高级选项,看看文章模板文件是多少;

2、然后在风格文件里看看有没有这个文件,如果没有就生成不了的;

3’如果没有就添加下,再进行生成!

利用模板。目前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);

>

检查你的文件编码。还有你的标签的书写。php标签 需要后台开启才可以使用的。

页面的编码、文件的存储的编码、dedecms程序的编码要统一。

编码不能解析的原因,大部分是标签书写错误的原因。建议到dede默认的模板里直接复制。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dede后台文档生成不了html什么原因

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情