Heim >Backend-Entwicklung >PHP-Tutorial >浅析Yii2集成富文本编辑器redactor实例教程_PHP

浅析Yii2集成富文本编辑器redactor实例教程_PHP

WBOY
WBOYOriginal
2016-05-29 11:46:551032Durchsuche

Yii2

在上篇文章给大家介绍了如何在yii2中集成百度编辑器umeditor以及如何解决umeditor上传图片问题。

今天我们来谈谈yii2集成另外一个强大好用的富文本编辑器Redactor,个人觉得Redactor比百度编辑器好用哦

Redactor有官方的Yii2插件package,实用性也是很强的。

首先我们不急不躁,先进行安装Redactor。

可以参考https://github.com/yiidoc/yii2-redactor进行安装。有很多新手看不惯英文哈,如果你点击了链接参考了github上的安装,希望你再回来看看在整个安装过程中都要哪些必要的注意点。

1、我们跟他们一样,利用composer安装即可。

2、添加配置项

'modules' => [ 
'redactor' => [ 
'class' => 'yii\redactor\RedactorModule', 
'uploadDir' => '上传目录', 
'uploadUrl' => '图片可访问地址', 
'imageAllowExtensions'=>['jpg','png','gif'] 
], 
],

第一个注意点,默认的上传文件保存在根目录下的uploads,如果你想更换文件的保存目录,修改配置项uploadDir即可,同时你需要修改uploadUrl保证图片可访问。3、如果你的view是ActiveField类型,下面的配置适用你

<&#63;= $form->field($model, 'content')->widget(\yii\redactor\widgets\Redactor::className()) &#63;>

但是如果你的表单不是用yii自带的组建生成的,你应该像下面这样配置

<&#63;= \yii\redactor\widgets\Redactor::widget([ 'model' => $model, 'attribute' => 'content' ]) &#63;>

4、其中上传类用的是redactor一套,但是你说你的上传类需要重写,也可以,只需要像下面这样加几个配置即可

<&#63;= $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'] 
] 
]) &#63;>

5、配置语言或者插件,像第四步一样,在clientOptions项中添加lang和plugins配置项即可,如果你想问都有哪些plugins,打开目录\vendor\yii2-redactor\assets\plugins可以一睹风采。

6、图片上传注意了,因为redactor是以模块进行引入的,如果你的项目含有权限管理,记得添加权限哦。

7、忘记了一个大前提,保证你的php支持fileinfo扩展。打开php.ini文件去掉fileinfo前面的分号即可

以上所述是小编给大家介绍的Yii2集成富文本编辑器redactor实例教程,希望对大家有所帮助!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn