yii2整合百度编辑器umeditor

博主推荐:yii2实战式教程是一套幽默风趣的高质量教程,从 yii2基础入门 到 yii2高级进阶,正在火热持续更新中,让你不错过yii2的每一个技术干货。

实际工作中,难免不会遇到类似新闻呀,文章呀之类的开发工作,这就要求运营人员去发布啦,但是喃,有些个小伙伴为了省事呢,三下五除二,ok,上线了。人家运营的妹子一试用,哎呀呀,你这发布文章内容给我整了个大点的 textarea 就算完事啦,发布一篇新闻你想整死我不成。我们接下来就来聊聊Yii2框架是如何整合百度编辑器umeditor的。

umeditor 是啥,我只听过ueditor,你这umeditor是不是盗版的东东喃?umeditor呢,说白了就是mini版的 ueditor,按照百度官方说法,其实就是编辑器中的"短软小",但是功能俱全咳咳。

首先勒,咱们先去官网下载一份mini版的ueditor umeditor,注意哦,是um editor。

下载下来解压放到项目根目录下面的 /css 目录下 命名为umeditor,具体位置各位随意,后面能引用的到就行。

第二步,我们先去扩展下 backend\assets\Appset 类,哎呀我擦,为啥要扩展这么个玩意,跟咱们的umeditor整合啥关系勒,半路杀出个程咬金出来。这里扩展下这个类文件的意图是为了接下来在文件中方便引入css js文件滴。

很简单,在 Appset 方法中增加下面两个方法即可

//定义按需加载JS方法,注意加载顺序在最后  
public static function addScript($view, $jsfile) {  
    $view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'backend\assets\AppAsset']);  
}  
//定义按需加载css方法,注意加载顺序在最后  
public static function addCss($view, $cssfile) {  
    $view->registerCssFile($cssfile, [AppAsset::className(), 'depends' => 'backend\assets\AppAsset']);  
}

接下来,按照下面的配置即可。

先做说明,此处我们假设有一个文章 article 表,有一个内容content字段需要显示为百度编辑器。按照yii2的表单模型来看,我们修改article\_form.php文件中的content字段

<?= $form->field($model, "content")->textarea(["style" => "width:760px;height:500px;"]) ?>

该文件引入Appset类并引入相关的css js文件如下

use backend\assets\AppAsset;
AppAsset::register($this);
AppAsset::addCss($this,"/css/umeditor/themes/default/css/umeditor.css");
AppAsset::addScript($this,"/css/umeditor/third-party/template.min.js");
AppAsset::addScript($this,"/css/umeditor/umeditor.config.js");
AppAsset::addScript($this,"/css/umeditor/umeditor.min.js");
AppAsset::addScript($this,"/css/umeditor/lang/zh-cn/zh-cn.js");

然后只需要在当前页面底部注册下面的js代码即可实现

<?php $this->beginBlock("js-block") ?>
    $(function () {
        var um = UM.getEditor("article-content", {
        });
    });
<?php $this->endBlock() ?>
<?php $this->registerJs($this->blocks["js-block"], \yii\web\View::POS_END); ?>

关于article-content怎么来滴喃,这个就是我们要绑定的目标对象,即content。article-content是当前该对象的id标识。

ok,到此百度编辑器基本上整合完毕,现在赶快去添加一篇文章试试看吧,记得更新看看编辑器里面是否也有内容哦

推荐阅读

yii2集成富文本编辑器redactor

感觉本篇文章不错,对你有收获?

¥ 我要小额赞助,鼓励作者写出更好的教程
作者 白狼
本文版权归作者,欢迎转载,但未经作者同意必须保留 此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。