DEDECMS栏目里发布文章发布不了怎么办?
您好,利用织梦dedecms模板程序建站,可以建立若干栏目,但由于个人的喜好或是考虑网站访客的点击习惯或是排版布局的合理,往往需要一些栏目不显示。对于这类问题,目前我做了如下几种处理:
一是导航栏的栏目显示,这个很简单,在建立栏目的时候,就有选择是显示还是隐藏的选项,只要选择了隐藏,导航栏里就不会显示该栏目,而且在首页的栏目列表里也不会显示该栏目。
二是栏目列表里的栏目显示。这个需要对代码进行一些改动。如果导航栏里显示栏目,而在栏目列表里不想让显示,可以在首页模板里找到
<div class='listbox'>
{dede:channelartlist }
………………
</div>
这段代码,这就栏目列表的代码,只需做如下改动
{dede:channelartlist typeid ='1,2,3,4' } 织梦模板
其中typeid ='1,2,3,4'里的1,2,3,4是栏目ID,在后台建立好的栏目可以看到相应ID,这里就是表示显示ID=1,2,3,4两个栏目。通常单页面的栏目不想显示的时候可以采用这种方法,比如我的网站上的“广告合作”就是这样实现的。(需要强调改动的部分是要显示的栏目ID,不显示的栏目ID不写就自动不显示了。
在内页可以插入分页符,可以在文章编辑页面的菜单里找到。还有就是在文章页模板,也就是{dede:fieldbody
/}后面插入分页符调用便签{dede:pagebreak/}。
“模板文件不存在,无法解析文档” 这个提示一般会在对网站进行了模板的安装或者是自己操作后台时出现的错误:
一般有以下两种可能:
一网站的栏目调用模板错误:
在一键更新的网站的时候会提示无法生成,然后我们可以观察生成的状态,看看是在生成那个栏目的时候停止了:
然后再更改相应栏目的调用模板即可。
如果还不行还有我们可以
首先打开:/incluede/arcarchivesclassphp
查找 “模板文件不存在,无法解析文档” 这行字,然后把整行修改为
[codesyntax lang="php"]
echo "模板文件不存在,无法解析文档!" $this->ArcID;
[/codesyntax]
然后保存,之后再更新,系统会再次提示:模板文件不存在,无法解析文档!,后面还会有出错的文章ID,你再到文章列表查找即可!找到文章之后,为文章添加文章分类,或者直接删掉。
二操作 sql
Dedecms 直接用SQL更新了一些文章后, 发现一键生成网站时出错, 提示模板文件不存在,无法解析文档!
但单独更新则OK。
看了下系统表, 发现 dede_arctiny 表中有许多数据行, 应该是这里出问题。
直接在系统->sql 命令行工具运行:
delete from dede_arctiny
重新一键生成, 故障解决
网上有两种解决方法:
一种是说你曾用记事本编辑过dede的php文件
2是说你得修改
找include/userloginclassphp里面的keepuser()函数,
把@session_register 全部改写, 虽然不知道这个@是什么意思
把@session_register($this->keepUserIDTag); 注释掉,然后改为
if (!isset($_SESSION[$this->keepUserIDTag]))
全部有6个。
如下:
if (!isset($_SESSION[$this->keepUserIDTag]))
//@session_register($this->keepUserIDTag);
$_SESSION[$this->keepUserIDTag] = $this->userID;
if (!isset($_SESSION[$this->keepUserTypeTag]))
//@session_register($this->keepUserTypeTag);
$_SESSION[$this->keepUserTypeTag] = $this->userType;
if (!isset($_SESSION[$this->keepUserChannelTag]))
//@session_register($this->keepUserChannelTag);
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
if (!isset($_SESSION[$this->keepUserNameTag]))
//@session_register($this->keepUserNameTag);
$_SESSION[$this->keepUserNameTag] = $this->userName;
if (!isset($_SESSION[$this->keepUserPurviewTag]))
//@session_register($this->keepUserPurviewTag);
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
if (!isset($_SESSION[$this->keepAdminStyleTag]))
//@session_register($this->keepAdminStyleTag);
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
然后就可以登入后台了。
我用的第二种方法解决的
0条评论