织梦dedecms生成静态时列表页面会显示未审核的文章怎么办

阅读数: 时间:2021-07-05 来源:发菜网站建设制作,专业做网站已十年 标签: 网站建设 天河网站建设 番禺网站建设 dedecms 织梦内容管理系统 织梦教程
我们做网站时,经常会把数据库导来导去,有时偶尔不够细心,有些参数没有改过来,之前有做过一个系统把内容导入到dedecms中但是会发现生成时未审核的文档也会在列表页面显示并且是以plus/view.php?id形式显示的。下下我们来看看问题解决的办法。
 
织梦的文档数据都是存在MySQL数据表里面的,就默认的安装的织梦系统来说,发的文章、软件、图片等等的文档信息,都会储存在dede_archives表中,dede_archives表是文档的主表。织梦是如何来判断一篇文档是否审核或者是否已经生成HTML文件的呢?
就是通过dede_archives表中的arcrank和ismake两个字段,今天来了解这两个字段的含义。具体来说arcrank是看这篇文章审核没有,它有-1和0两个值;ismake是代表是否生成了静态文件,它有三个值:0,1,-1。
下面是对各种情况进行组合,都有可能出现的文档状态:
审核状态生成html:$arcrank=-1 $ismake = 0 (但是后台文章列表那里显示没有生成,点击修改文章是显示以生成,其实没生成,因为是未审核,一但审核,自动变成1)。
审核状态动态浏览:$arcrank=-1 $ismake = -1 ;
开放状态生成html:$arcrank=0 $ismake = 1 ;
开放状态动态浏览:$arcrank=0 $ismake = -1 ;
总结一下,通过上面四个,得出以下结论:
$arcrank =-1是代表未审核,0带表审核:
$ismake生成html:0或者1; 入库的时候是0,程序会判断是不是生成了html,如果是会调整到1;
另外还有一个需要注意的地方,就是织梦还有一个文档微表dede_arctiny,如果我们在使用SQL语句对文档批量进行审核或者未审核操作时,必须把微表中的arcrank字段也设为相同的值

网上比较常见的办法是使用SQL语句设置,具体的SQL语句如下:
 代码如下 复制代码
Update dede_archives set arcrank = -1,ismake=0;
 
使用这两条SQL语句之后,所有的文章文档的状态就变成了未审核了。不过会遇到一个问题,有的是前台动态还可以访问,后台一键生成的时候居然还会生成,只是不会真正的生成文件。产生这种情况的原因是什么呢?其实是织梦DedeCMS的微表和主表的状态没有统一。网上有一种比较死的办法,是把文章删除之后再恢复文章就解决了。
发菜工作室今天要说的还是使用SQL语句解决这个问题。都知道是微表的问题了,只需要使用如下的SQL语句即可解决:
 代码如下 复制代码
Update dede_arctiny set arcrank = -1;
 
综合一下,我们在把所有的文章设置为未审核状态的时候,一定要使用以下的SQL语句:
 代码如下 复制代码
Update dede_archives set arcrank = -1,ismake=0 where 条件; 
Update dede_arctiny set arcrank = -1 where 条件;
 
这样就把文章的主表、微表等等的信息都同步了。
最后发现是因为dede_archives与dede_arctiny表中有两不统一导致的。
 
 
笔者这样写,在执行sql页面提交就可以执行了:
Update dede_archives set arcrank = 0,ismake=0 where id>500;

Update dede_arctiny set arcrank = 0 where id>500;

OK, 关于dedecms生成静态时列表页面会显示未审核的文章的问题,今天就分享到这里了。关于企业建站、网络推广等问题,欢迎向我们咨询。

推荐文章/ Related products

最新案例/ LATEST CASES

发菜网络工作室外贸建站专注企业外贸网站设计制作

提供专业的外贸网站设计、小语种站群、Google ADS推广、谷歌SEO优化、AI大数据营销、SNS社媒营销
立即咨询
X微信咨询

截屏,微信识别二维码

微信号:gdfacai

(点击微信号复制,添加好友)

  打开微信

微信号已复制,请打开微信添加咨询详情!
电话咨询
在线客服
微信咨询
关注我们
在线留言
返回顶部
关闭

网站需求

您的公司
您的姓名*
您的手机*
您的需求
感谢您的咨询,我们会尽快给您回复!