分享

ECSHOP整合百度编辑器UEditor | 我爱小技术

 总懂缘 2015-09-27

ECSHOP自带的编辑器,相信很多朋友都忍无可忍了,小编今天整合了百度编辑器,当然,也为大家提供了教程,因为小编发现网上找到的教程,都是不完善的,有的问题非常多,一般存在以下问题:

后台添加商品和编辑商品里面关联商品、配件、关联文章不能正常使用的问题。
后台商品批量导出不能正常使用的问题。
后台添加虚拟商品和编辑虚拟商品里面关联商品、配件、关联文章不能正常使用的问题。
后台专题管理里面专题商品不能正常使用的问题。
后台添加超值礼包和编辑超值礼包里面的可选商品不能正常使用的问题。
后台添加文章和编辑文章里面关联商品不能正常使用的问题。
ie8下插入多张远程图片之后,dialog假死。

求人不如求已,所以还是自己来吧。

大伙先欣赏一下最终的效果吧,是完美整合的呢!

ECSHOP完美整合百度编辑器

ECSHOP完美整合百度编辑器

下面开始咯。

第一步:先下载百度编辑器,上传至根目录/includes/下,注意,文件夹名称记得修改为ueditor,因为本教程以下用到的路径都是这个,如果文件夹名称不对,则路径不对了。

第二步:修改后台文件,生成编辑器。笔者教程修改的是admin/templates下的goods_info.htm和article_info.htm,而有部分朋友会修改admin/includes/lib_main.php这个文件,其实道理是一样的哦。

生成编辑器的方法如下:

打开goods_info.htm,搜索<td>{$FCKeditor}</td>

打开goods_info.htm,搜索{$FCKeditor}

将内容替换成:

<script type="text/javascript" charset="utf-8" src="../includes/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="../includes/ueditor/ueditor.all.min.js"> </script>
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
<script type="text/javascript" charset="utf-8" src="../includes/ueditor/lang/zh-cn/zh-cn.js"></script>

<style type="text/css">
.clear {
clear: both;
}
</style>
<textarea id="goods_desc" name="goods_desc" style="width:100%;height:500px;"> {$goods.goods_desc}</textarea>
<script type="text/javascript">
delete(Object.prototype.toJSONString);
UE.getEditor('goods_desc')

</script>

替换代码后

替换代码后

article_info.htm文件也是同样的方法,将{$FCKeditor}替换掉。

article_info.htm文件也是同样的方法,将{$FCKeditor}替换掉。

article_info.htm文件也是同样的方法,将{$FCKeditor}替换掉。

除了上面的方法外,也可以直接修改PHP文件,即{$FCKeditor}调用的内容。

方法是修改admin/includes/lib_main.php

查找并替换掉下面内容:

/**
* 生成编辑器
* @param string input_name 输入框名称
* @param string input_value 输入框值
*/
function create_html_editor($input_name, $input_value = '')
{
global $smarty;

$editor = new FCKeditor($input_name);
$editor->BasePath = '../includes/fckeditor/';
$editor->ToolbarSet = 'Normal';
$editor->Width = '100%';
$editor->Height = '320';
$editor->Value = $input_value;
$FCKeditor = $editor->CreateHtml();
$smarty->assign('FCKeditor', $FCKeditor);
}

 

注意:

留意一下,<textarea id="goods_desc" name="goods_desc" style="width:100%;height:500px;"> {$goods.goods_desc}</textarea>这段中,width和height分别是指编辑器的大小,但是IE内核的浏览器,不支持写成px,这是跟CSS有关,由于小编是用谷歌浏览器的,所以这个小毛病,也没时间去研究了,如果你有需要的,需要你自己自行稍微研究一下哦。

第三步:解决后台js冲突

其实这时候编辑器也是可以用的,但是如果进入商品列表、分类等等,会报错的,提示缺少Ajax,下面提供解决方法办法

Ajax object doesn't exists.

Ajax object doesn't exists.

方法:修改admin/templates/pageheader.htm,调用js,解决js冲突问题。

在头部找到{insert_scripts files="../js/transport.js,common.js,../js/utils.js"} ,将其替换为:

<script type="text/javascript" src="../includes/ueditor/fix_jquery/jquery.min.js" rel="stylesheet" /></script>
<script type="text/javascript" src="../includes/ueditor/fix_jquery/jquery.json-1.3.js" rel="stylesheet" /></script>
<script type="text/javascript" src="js/common.js" rel="stylesheet" /></script>
<script type="text/javascript" src="../includes/ueditor/fix_jquery/transport_json.js" rel="stylesheet" /></script>
{insert_scripts files="../js/utils.js"}

解决后台js冲突,Ajax object doesn't exists.

解决后台js冲突,Ajax object doesn't exists.

JQ文件网上可以下载到,也可以通过来小编这儿下载。

点击这里,ECSHOP百度编辑器插件,直接上传文件至根目录就OK了。

提取码 c6a5

PS:不管用什么服务器,注意文件夹的权限哦,例如linux就需要777权限咯,不然图片是上传不了的,而且不停报错。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多