Dede织梦 无法保存栏目内容解决方法

网络整理 - 07-21

今天遇到的问题 用了半小时解决的 分享解决办法~ DedeCms 肯定有很多人喜欢,也肯定有很多人在使用。最近我使用DedeCms5.3和DedeCms5.5遇到了一个不可思议的问题:在添加栏目时IE内核的浏览器无法保存栏目内容。到网上搜索了半天没见有解决方法,查看DedeCms官方搜索到的结果是“
“栏目内容”无法保存和修改的问题解决方法,
打开dede\templets目录的下面两个文件
catalog_add.htm,519行
catalog_edit.htm,426行
将上面两个文件中指定位置的
GetEditor("content",$myrow['content'],"450","Default","print","false");
替换成
GetEditor("content",$myrow['content'],"450","Basic","print","false");即可!”。

试了一下问题还是没解决不知道其它朋友是否有解决了反正我是怎么试都不行。看来只有靠自己了。

打开DedeCms后台目录下的文件catalog_edit.php和article_edit.php对比一下,使用相同的函数调出了编辑器说明DedeCms的程序应该没问题而且在Firefox浏览器中还可以正确的保存内容更进一步证明了DedeCms的程序是没问题的。在IE下不行而在Firefox下却可以想到这里我觉得应该是编辑器与DOM之间产生了问题,在认真对比刚才的两个页面唯一的区别在于“栏目管理”的地方默认编辑器区域默认是被隐藏了,使用IE看看右下角的错误提示:“由于出现错误 800a025e 而导致此项操作无法完成”在网上搜索一下“由于出现错误 800a025e 而导致此项操作无法完成” 才发现原来是FCKeditor的一个BUG 。当FCKeditor的父目录默认被隐藏就会出现此类错误。

找到错误原因就好解决问题了,在添加和编辑栏目时给编辑器添加默认值就可以解决这个问题了。

打开:后台目录/templets/catalog_edit.htm和catalog_add.htm两个文件
catalog_add.htm    文件第518行GetEditor("content", "", "450", "Default", "print", "false");

替换为GetEditor("content", " ", "450", "Default", "print", "false");

给编辑器默认赋一个空格

catalog_edit.htm 文件第426行:GetEditor("content", $myrow['content'], "450", "Default", "print", "false");

替换为

$cont= empty($myrow['content']) ? ' ': $myrow['content']; GetEditor("content", $cont, "450", "Default", "print", "false");

$cont 是自己定义的
这样就解决了栏目内容无法保存的问题。