承接 froala/wysiwyg-cake2 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

froala/wysiwyg-cake2

最新稳定版本:5.2.0

Composer 安装命令:

composer require froala/wysiwyg-cake2

包简介

A beautiful WYSIWYG text editor based on HTML5 technology. Cross browser, with mobile support, high performance and Retina Ready modern design.

README 文档

README

Build Status Packagist Packagist

CakePHP Plugin for Froala Javascript WYSIWYG Text Editor. For cake 2.3+

About

The purpose of placing Froala WYSIWYG Editor in a plugin is to keep it separate from a themed view, the regular webroot or the app in general, which makes it easier to update and overall follows the idea of keeping the code clean and modular.

Installation

To use Froala WYSIWYG Editor you need to clone git repository:

git clone git://github.com/froala/wysiwyg-cake2.git Plugin/Froala

Or if your CakePHP application is setup as a git repository, you can add it as a submodule:

git submodule add git://github.com/froala/wysiwyg-cake2.git Plugin/Froala

Alternatively, you can download an archive from the master branch on Github and extract the contents to Plugin/Froala.

Add:

     "froala/wysiwyg-cake2": "^2.9"

to the require section of your composer.json file.

or use composer :

php ./composer.phar require froala/wysiwyg-cake2

Then move the FroalaEditor folder from /Plugins to app/Plugin and rename it to Froala,or directly clone the folder from git repository to app/Plugin.

Usage

The Froala helper is basically just a convenience helper that allows you to use php and CakePHP conventions to generate the configuration for Froala and as an extra it allows you to load configs.

There two ways you can use this plugin, simply use the helper or load the editor "by hand" using

$this->Html->css('/Froala/css/froala_editor.min.css');
$this->Html->script('/Froala/js/froala_editor.min.js', array('toolbarInline' => false));

and placing your own script in the head of the page. Please note that the helper will auto add the Froala editor script to the header of the page. No need to to that by hand if you use the helper.

If your app is not set up to work in the top level of your host / but instead in /yourapp/ the automatic inclusion of the script wont work. You'll manually have to add the js file to your app:

$this->Html->css('/yourapp/Froala/css/froala_editor.min.css');
$this->Html->script('/yourapp/Froala/js/froala_editor.min.js', array('toolbarInline' => false));

If you need to load the plugins, then use:

$this->Html->script(
  array(
    '/Froala/js/froala_editor.min.js',
    '/Froala/js/plugins/align.min.js',
    '/Froala/js/plugins/char_counter.min.js',
    '/Froala/js/plugins/code_beautifier.min.js',
    '/Froala/js/plugins/code_view.min.js',
    '/Froala/js/plugins/colors.min.js',
    '/Froala/js/plugins/draggable.min.js',
    '/Froala/js/plugins/emoticons.min.js',
    '/Froala/js/plugins/entities.min.js',
    '/Froala/js/plugins/file.min.js',
    '/Froala/js/plugins/font_family.min.js',
    '/Froala/js/plugins/font_size.min.js',
    '/Froala/js/plugins/fullscreen.min.js',
    '/Froala/js/plugins/help.min.js',
	'/Froala/js/plugins/image.min.js',
    '/Froala/js/plugins/image_manager.min.js',
    '/Froala/js/plugins/inline_style.min.js',
    '/Froala/js/plugins/line_breaker.min.js',
    '/Froala/js/plugins/link.min.js',
    '/Froala/js/plugins/lists.min.js',
    '/Froala/js/plugins/paragraph_format.min.js',
    '/Froala/js/plugins/paragraph_style.min.js',
    '/Froala/js/plugins/print.min.js',
    '/Froala/js/plugins/quick_insert.min.js',
    '/Froala/js/plugins/quote.min.js',
    '/Froala/js/plugins/save.min.js',
    '/Froala/js/plugins/special_characters.min.js',
    '/Froala/js/plugins/table.min.js',
    '/Froala/js/plugins/url.min.js',
    '/Froala/js/plugins/video.min.js'),

  array('toolbarInline' => false)
);


$this->Html->css(
  array(
    '/Froala/css/froala_editor.min.css',
    '/Froala/css/froala_style.min.css',
    '/Froala/css/plugins/char_counter.min.css',
    '/Froala/css/plugins/code_view.min.css',
    '/Froala/css/plugins/colors.min.css',
    '/Froala/css/plugins/draggable.min.css',
    '/Froala/css/plugins/emoticons.min.css',
    '/Froala/css/plugins/file.min.css',
    '/Froala/css/plugins/fullscreen.min.css',
    '/Froala/css/plugins/help.min.css',
    '/Froala/css/plugins/image_manager.min.css',
    '/Froala/css/plugins/image.min.css',
    '/Froala/css/plugins/line_breaker.min.css',
    '/Froala/css/plugins/quick_insert.min.css',
    '/Froala/css/plugins/special_characters.min.css',
    '/Froala/css/plugins/table.min.css',
    '/Froala/css/plugins/video.min.css'
  )
);

How to use the helper

Since CakePHP 2.0 it is necessary to activate the plugin in your application. To do so, edit app/Config/bootstrap.php and add the line CakePlugin::load('Froala'); at the bottom. If you already have CakePlugin::loadAll(); to auto-load all plugins then you may skip this step.

Wherever you want to use it, load it in the controller

class AppController extends Controller
{
	...
	
	public $helpers = array('Froala.Froala');
	
	...
}

In the view simply use the editor() method and pass options as key/value pairs in an array.

<div class="selector">
  <?= $this->Froala->editor('.selector');?>
</div>

This will instruct Froala to convert all matched elements on the page to Froala editors. If you require some more precise control, or want to change this behavior, checkout the Froala configuration options on the Froala website.

Default options

If you want a quick way to configure default values for all the Froala Editors of an application, you could use the 'Froala.editorOptions' configuration.

Here is an example of a line you could have in bootstrap.php:

Configure::write('Froala.editorOptions', array('height' => '300px'))

It will make all editors to have a 300px height. You may want to override this value for a single editor. To do so, just pass the option to the editor() method and it will override the default value.

You can also pass options at editor iniliatization as given below

$this->Froala->editor('.selector', array('option' => value));

You can always check the tests to see how to use the helper.

Requirements

  • PHP version: PHP 5.2+
  • CakePHP version: CakePHP 2.1+

License

The wysiwyg-cake project is under MIT license. However, in order to use Froala WYSIWYG HTML Editor plugin you should purchase a license for it.

Froala Editor has 3 different licenses for commercial use. For details please see License Agreement.

froala/wysiwyg-cake2 适用场景与选型建议

froala/wysiwyg-cake2 是一款 基于 CSS 开发的 Composer 扩展包,目前已累计 180 次下载、GitHub Stars 达 11, 最近一次更新时间为 2017 年 03 月 31 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「text」 「javascript」 「wysiwyg」 「editor」 「html」 「rte」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 froala/wysiwyg-cake2 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 froala/wysiwyg-cake2 我们能提供哪些服务?
定制开发 / 二次开发

基于 froala/wysiwyg-cake2 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 180
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 11
  • 点击次数: 27
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 11
  • Watchers: 9
  • Forks: 12
  • 开发语言: CSS

其他信息

  • 授权协议: proprietary
  • 更新时间: 2017-03-31