在上篇文章给大家介绍了如何在yii2中集成百度编辑器umeditor以及如何解决umeditor上传图片问题。
今天我们来谈谈yii2集成另外一个强大好用的富文本编辑器Redactor,个人觉得Redactor比百度编辑器好用哦
Redactor有官方的Yii2插件package,实用性也是很强的。
首先我们不急不躁,先进行安装Redactor。
可以参考https://github.com/yiidoc/yii2-redactor进行安装。有很多新手看不惯英文哈,如果你点击了链接参考了github上的安装,希望你再回来看看在整个安装过程中都要哪些必要的注意点。
1、我们跟他们一样,利用composer安装即可。
2、添加配置项
1
2
3
4
5
6
7
8
|
'modules' => [ 'redactor' => [ 'class' => 'yii\redactor\RedactorModule' , 'uploadDir' => '上传目录' , 'uploadUrl' => '图片可访问地址' , 'imageAllowExtensions' =>[ 'jpg' , 'png' , 'gif' ] ], ], |
第一个注意点,默认的上传文件保存在根目录下的uploads,如果你想更换文件的保存目录,修改配置项uploadDir即可,同时你需要修改uploadUrl保证图片可访问。3、如果你的view是ActiveField类型,下面的配置适用你
1
|
<?= $form ->field( $model , 'content' )->widget(\yii\redactor\widgets\Redactor::className()) ?> |
但是如果你的表单不是用yii自带的组建生成的,你应该像下面这样配置
1
|
<?= \yii\redactor\widgets\Redactor::widget([ 'model' => $model , 'attribute' => 'content' ]) ?> |
4、其中上传类用的是redactor一套,但是你说你的上传类需要重写,也可以,只需要像下面这样加几个配置即可
1
2
3
4
5
6
7
8
9
|
<?= $form ->field( $model , 'content' )->widget(\yii\redactor\widgets\Redactor::className(), [ 'clientOptions' => [ 'imageManagerJson' => [ '/redactor/upload/image-json' ], 'imageUpload' => [ '/redactor/upload/image' ], 'fileUpload' => [ '/redactor/upload/file' ], 'lang' => 'zh_cn' , 'plugins' => [ 'clips' , 'fontcolor' , 'imagemanager' ] ] ]) ?> |
5、配置语言或者插件,像第四步一样,在clientOptions项中添加lang和plugins配置项即可,如果你想问都有哪些plugins,打开目录\vendor\yii2-redactor\assets\plugins可以一睹风采。
6、图片上传注意了,因为redactor是以模块进行引入的,如果你的项目含有权限管理,记得添加权限哦。
7、忘记了一个大前提,保证你的php支持fileinfo扩展。打开php.ini文件去掉fileinfo前面的分号即可
以上所述是小编给大家介绍的Yii2集成富文本编辑器redactor实例教程,希望对大家有所帮助!