DEDECMS后台新建模型多个字段调用百度编辑器

dede后台编辑器更换为百度编辑器ueditor 之后 正常情况下 你不会发现问题  但是如果 你的模型比如文章模型 添加了自定义字段 而且类型为HTML格式 或者文本保存HTML格式 当你发布文章编辑文章时 你会发现 只有第一个编辑器显示出来  还有最下面的 文章内容

这里说的方法是在dedecsm5.7织梦整合百度编辑器ueditor最新1.4.3方法 基础之上 出现的问题  不过网上大多教程亦如此

核心代码

else if($GLOBALS['cfg_html_editor']=='ueditor')
{
$fvalue = $fvalue=='' ? '<p></p>' : $fvalue;
$code = '
<script type="text/javascript" charset="utf-8" src="/include/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="/include/ueditor/ueditor.all.js"></script>
<link rel="stylesheet" type="text/css" href="/include/ueditor/themes/default/css/ueditor.css">
<textarea name="'.$fname.'" id="'.$fname.'" style="width:100%;">'.$fvalue.'</textarea>
<script type="text/javascript">
var ue = new baidu.editor.ui.Editor();
ue.render("'.$fname.'");
</script>';
if($gtype=="print")

{
echo $code;
}

else
{
return $code;
}

}

在每次实例化对象的时候 都会引入js

以上问题的解决办法就是  页面值引用一次js

图中红色代码部分

else if($GLOBALS['cfg_html_editor']=='ueditor')
{
$fvalue = $fvalue=='' ? '<p></p>' : $fvalue;
$code = '
<script type="text/javascript" charset="utf-8" src="/include/ueditor/ueditor.config.js"></script>
  <script type="text/javascript" charset="utf-8" src="/include/ueditor/ueditor.all.js"></script>
  <link rel="stylesheet" type="text/css" href="/include/ueditor/themes/default/css/ueditor.css">
<textarea name="'.$fname.'" id="'.$fname.'" style="width:100%;">'.$fvalue.'</textarea>
<script type="text/javascript">
var ue = new baidu.editor.ui.Editor();
ue.render("'.$fname.'");
</script>';
if($gtype=="print")

{
echo $code;
}

else
{
return $code;
}

}

在inc_func_funcAdmin.php 将这三行代码剪切   至 需要引入编辑器的页面 如后台的发布文章模板页面 article_add.htm   修改文章的模板页面 article_edit.htm等等  放在头部的head区域 原则是在实例化编辑器之前

inc_func_funcAdmin.php部分

article_add.htm部分

 

QQ截图20160818010417

THE END