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


Posted in PHP onApril 25, 2016

在上篇文章给大家介绍了如何在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类型,下面的配置适用你

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

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

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

4、其中上传类用的是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'] 
] 
]) ?>

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

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

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

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

PHP 相关文章推荐
Function eregi is deprecated (解决方法)
Jun 21 PHP
php常用字符串处理函数实例分析
Nov 22 PHP
迁移PHP版本到PHP7
Feb 06 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
Apr 17 PHP
php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
Mar 14 PHP
浅析PHP中的i++与++i的区别及效率
Jun 15 PHP
PHP树-不需要递归的实现方法
Jun 21 PHP
微信 开发生成带参数的二维码的实例
Nov 23 PHP
PHP实现将标点符号正则替换为空格的方法
Aug 09 PHP
PHP完全二叉树定义与实现方法示例
Oct 09 PHP
ThinkPHP5 的简单搭建和使用详解
Nov 15 PHP
laravel 查询数据库获取结果实现判断是否为空
Oct 24 PHP
Yii2增加验证码步骤详解
Apr 25 #PHP
Yii实现显示静态页的方法
Apr 25 #PHP
mysql_escape_string()函数用法分析
Apr 25 #PHP
PHP中addslashes与mysql_escape_string的区别分析
Apr 25 #PHP
PHP引用的调用方法分析
Apr 25 #PHP
PHP常见错误提示含义解释(实用!值得收藏)
Apr 25 #PHP
使用ltrace工具跟踪PHP库函数调用的方法
Apr 25 #PHP
You might like
分页显示Oracle数据库记录的类之二
2006/10/09 PHP
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
PHP爆绝对路径方法收集整理
2012/09/17 PHP
一个好用的PHP验证码类实例分享
2013/12/27 PHP
php-beanstalkd消息队列类实例分享
2017/07/19 PHP
浅谈php的TS和NTS的区别
2019/03/13 PHP
pjblog中的UBBCode.js
2007/04/25 Javascript
JavaScript函数、方法、对象代码
2008/10/29 Javascript
模仿JQuery sortable效果 代码有错但值得看看
2009/11/05 Javascript
Google AJAX 搜索 API实现代码
2010/11/17 Javascript
js构造函数、索引数组和属性的实现方式和使用
2014/11/16 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
2015/10/01 Javascript
AngularJS入门心得之directive和controller通信过程
2016/01/25 Javascript
js点击文本框弹出可选择的checkbox复选框
2016/02/03 Javascript
jQuery购物车插件jsorder用法(支持后台处理程序直接转换成DataTable处理)
2016/06/08 Javascript
浅谈javascript:两种注释,声明变量,定义函数
2016/09/29 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
详解javascript函数写法大全
2019/03/25 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
jQuery列表动态增加和删除的实现方法
2020/11/05 jQuery
[01:00] DOTA2英雄背景故事第五期之重力引力法则谜团
2020/07/16 DOTA
在Python中使用dict和set方法的教程
2015/04/27 Python
Python实现将文本生成二维码的方法示例
2017/07/18 Python
Python系统监控模块psutil功能与经典用法分析
2018/05/24 Python
Python 3.3实现计算两个日期间隔秒数/天数的方法示例
2019/01/07 Python
Python设计模式之组合模式原理与用法实例分析
2019/01/11 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
pytorch::Dataloader中的迭代器和生成器应用详解
2020/01/03 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
Casetify官网:自制专属手机壳、iPad护壳和Apple Watch手表带
2018/05/09 全球购物
MSC邮轮官方网站:加勒比海、地中海和世界各地的假期
2018/08/27 全球购物
中国包裹转运寄送国际服务:Famiboat
2019/07/24 全球购物
旷课检讨书大全
2014/01/21 职场文书
学生个人自我鉴定
2014/03/26 职场文书
幼儿园综治宣传月活动总结
2015/05/07 职场文书
生产设备维护保养制度
2015/08/06 职场文书