做者:白狼 出处:http://www.manks.top/article/yii2_redactorphp
本文版权归做者,欢迎转载,但未经做者赞成必须保留此段声明,且在文章页面明显位置给出原文链接,不然保留追究法律责任的权利。git
前面咱们说过如何在yii2中集成百度编辑器umeditor以及如何解决umeditor上传图片问题
今天咱们来谈谈yii2集成另一个强大好用的富文本编辑器Redactor,我的以为Redactor比百度编辑器好用哦github
Redactor有官方的Yii2插件package,实用性也是很强的。json
首先咱们不急不躁,先进行安装Redactor。yii2
能够参考https://github.com/yiidoc/yii2-redactor进行安装。有不少新手看不惯英文哈,若是你点击了连接参考了github上的安装,但愿你再回来看看在整个安装过程当中都要哪些必要的注意点。composer
一、咱们跟他们同样,利用composer安装便可。yii
二、添加配置项编辑器
'modules' => [ 'redactor' => [ 'class' => 'yii\redactor\RedactorModule', 'uploadDir' => '上传目录', 'uploadUrl' => '图片可访问地址', 'imageAllowExtensions'=>['jpg','png','gif'] ], ],
第一个注意点,默认的上传文件保存在根目录下的uploads,若是你想更换文件的保存目录,修改配置项uploadDir便可,同时你须要修改uploadUrl保证图片可访问。三、若是你的view是ActiveField类型,下面的配置适用你插件
<?= $form->field($model, 'content')->widget(\yii\redactor\widgets\Redactor::className()) ?>
可是若是你的表单不是用yii自带的组建生成的,你应该像下面这样配置code
<?= \yii\redactor\widgets\Redactor::widget([ 'model' => $model, 'attribute' => 'content' ]) ?>
四、其中上传类用的是redactor一套,可是你说你的上传类须要重写,也能够,只须要像下面这样加几个配置便可
<?= $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'] ] ]) ?>
五、配置语言或者插件,像第四步同样,在clientOptions项中添加lang和plugins配置项便可,若是你想问都有哪些plugins,打开目录\vendor\yii2-redactor\assets\plugins
能够一睹风采。 六、图片上传注意了,由于redactor是以模块进行引入的,若是你的项目含有权限管理,记得添加权限哦。
七、忘记了一个大前提,保证你的php支持fileinfo扩展。打开php.ini文件去掉fileinfo前面的分号便可