找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 130|回复: 0

[cms教程] DedeCms织梦后台添加编辑文章空白解决办法

[复制链接]

该用户从未签到

发表于 2021-1-18 11:21:55 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
原因分析:
        根据dedecms官方文档说明,出现这种问题是可能是由于catalog_do.php里的header()的问题,因为当执行header()前,如果前面输出了空格、空行、任何字符,都会导致header()跳转失效。这就需要你非常有耐心的去排查一个个是否有空格或空行。把这些空格空行删除,至此功能就全部正常了。
         
        解决的方法:
         
        1、下载…/dede/catalog_do.php把到本地,用文本编辑器打开,做如下替换:
         
        A、把:header(“location:article_add.php”)替换为:
         
         代码如下
        echo “ “;
         
         
         
        b、把header(“location:{$gurl}?channelid={$channelid}&cid= {$cid}”);
         
        替换为:
         
         代码如下
        echo “ “;
         
        2、下载…/dede/archives_do.php下载到本地,用editplus文本编辑器打开,做如下修改:
         
        把:header(“location:{$gurl}?aid=$aid”);
         
        修改为:
         
         代码如下
        echo ‘’;
         
        如果不行就用下面的方法解决后台编辑文章空白问题
         
        后台-”系统”-”系统基本参数”-”核心设置”-”html编辑器选项(目前仅支持fck):” 这里填写fck , 已正确的用户无需更改.
         
        再不行就把FCK换成,应该能解决后台添加/编辑文章页面空白或无法显示的问题了!
         
        系统基本参数- 核心设置- Html编辑器选项 填写ckeditor 保存 更新缓存
         
         
        主要就是添加文字之后页面变为空白,没有跳转到发布成功页面,但是点击栏目管理可以看到多了一篇文章,点击查看内容却没有。重装系统是不能解决的,
         
         
        最后在网上找到了解决方案:
         
         
        首先进系统---系统设置----系统错误修复,修复了之前生成的错误页面。然后进入系统---系统设置---系统基本参数------其它选项-----自动提取关键字--选择否--保存。
         
         
        如果是系统升级了我们可尝试下面方法解决
         
         从DEDE5.6升级到5.7后,发现织梦后台部分栏目无法添加文章,添加后显示空白,进所有文档,查看文章状态显示为“未生成”;
         
        查看了很多网上的帖子,没有发现能解决此问题的;
         
        后台经过逆向反复查找,最终锁定问题可能出在此栏目的模板上,模板上使用了一个自定义函数IDReturnURL;
         
        而这个函数在DEDE5.7版本升级后,覆盖掉了原文件;
         
        {dede:channelartlist typeid=386}
         
        [url={dede:field name=,{dede:field name='typename'/}[/url]
        [U,
        {dede:sql sql='Select * from dede_archives where typeid=~id~ ORDER BY click limit 0]100;'}
        [*,[url=[field:id function=IDReturnURL(@me)/,,[field:title/,[/url]
        {/dede:sql}
        [/U,
         
        {/dede:channelartlist}
         
        经过查找,发现此函数定义在了extend.func.php文件中;具体定义如下:
         
        function IDReturnURL($ID)
        {
        global $dsql;
        $query = "Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,
        tp.defaultname,tp.namerule,tp.moresite,tp.siteurl]tp.sitepath
        from dede_archives arc left join dede_arctype tp on arc.typeid=tp.id where arc.id = ".$ID;
        $row = $dsql->GetOne($query);
        $ReturnURL = GetFileUrl($row['id',,$row['typeid',,$row['senddate',,$row['title',,$row['ismake',,
        $row['arcrank',,$row['namerule',,$row['typedir',,$row['money',,$row['filename',,$row['moresite',,$row['siteurl',,$row['sitepath',);
        return $ReturnURL;
         
        }
         
        添加后,再次进行测试,一切恢复正常
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-11-5 13:42

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表