织梦Dedecms更新出现:读取频道信息失败,无法进行后续报错解决方式

dedecms一键全局更新,出现错误提示:读取频道信息失败,无法进行后续操作。

1.在网上查找后说在后台"系统"-"系统错误修复[S] "进行操作,可是没有解决。

2.分类进行更新,但是依然在某个地方突然就跳出这个错误提示。

解决的记录基本上就是,在这个提示错误信息的地方显示出出现错误的内容或文章ID。

1.打开dede/mackhtml_archives_action.php (注:通常安全起见,dede会改成别的名字,既是后台的目录地址)。

查找

while($row=$dsql->GetObject('out'))
{
   $tjnum++;
   $id = $row->id;
   $ac = new Archives($id);
   $rurl = $ac->MakeHtml($isremote);
}

把这段代码更换为

while($row=$dsql->GetObject('out'))
{
   $tjnum++;
   $id = $row->id;
   echo $id;
   echo "";
   $ac = new Archives($id);
   $rurl = $ac->MakeHtml($isremote);
}   

 

2.然后在进入后台更新,这个时候就会发现, 在“ 读取频道信息失败,无法进行后续操作! ”提示信息的上面的最后一行出现了数字id“xxx”;

打开dede的数据库  打开表dede_arctiny然后发现此表中id为“xxx”的这条数据记录中的 ‘typeid’是“yy”;

3.在查找id为“yy”的栏目,有很大的可能就是已经被删除了,要么就是改变了栏目属性,比如由“最终列表栏目”改为“频道封面”或者“外部链接”,但是其栏目底下的文章没有事先删除。如果是要保持改变后的属性或者栏目确实删除了。就直接在数据库删除id为“xxx”的文章。

然后再重新更新,发现问题解决了。

最后,记得把第一部改变的dede/mackhtml_archives_action.php代码还原。

还有一种问题可能由于 \data\cache\inc_catalog_base.inc 没有777权限导致的!  把这个文件的权限调整为777权限即可!

posted @ 2019-08-13 10:40  紫云传芳  阅读(849)  评论(0)    收藏  举报