承接 trsteel/ckeditor-bundle 相关项目开发

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

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

trsteel/ckeditor-bundle

最新稳定版本:1.22.1

Composer 安装命令:

composer require trsteel/ckeditor-bundle

包简介

Symfony bundle for easy integration of the CKEditor WYSIWYG

README 文档

README

  1. Add TrsteelCkeditorBundle to your composer.json
  2. Enable the bundle
  3. Install bundle assets
  4. Configure the bundle (optional)
  5. Add the editor to a form
  6. Configure data transformers

Step 1: Add TrsteelCkeditorBundle to your composer.json

php composer.phar require Trsteel/ckeditor-bundle

Step 2: Enable the bundle

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Trsteel\CkeditorBundle\TrsteelCkeditorBundle(),
    );
}

Step 3: Install bundle assets

$ php ./bin/console assets:install public --symlink

--symlink is optional

Step 4: Configure the bundle (optional)

For a full configuration dump use:

$ php ./bin/console config:dump-reference TrsteelCkeditorBundle

An example configuration:

trsteel_ckeditor:
    class: Trsteel\CkeditorBundle\Form\Type\CkeditorType
    transformers: ['html_purifier']
    toolbar: ['document', 'clipboard', 'editing', '/', 'basicstyles', 'paragraph', 'links', '/', 'insert', 'styles', 'tools']
    toolbar_groups:
        document: ['Source','-','Save','-','Templates']
        clipboard: ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Undo','Redo']
        editing: ['Find','Replace','-','SelectAll']
        basicstyles: ['Bold','Italic','Underline','Strike','Subscript','Superscript','-','RemoveFormat']
        paragraph: ['NumberedList','BulletedList','-','Outdent','Indent','-','JustifyLeft', 'JustifyCenter','JustifyRight','JustifyBlock']
        links: ['Link','Unlink','Anchor']
        insert: ['Image','Flash','Table','HorizontalRule']
        styles: ['Styles','Format']
        tools: ['Maximize', 'ShowBlocks']
    ui_color: '#000000'
    startup_outline_blocks: true
    width: 800 #Integer or %
    height: 300 #Integer or %
    language: 'en-au'
    filebrowser_upload_url:
        url: relative-url.php?type=file
    filebrowser_image_browse_url:
        route: route_name
        route_parameters:
            type: image

Or even overwrite the 'document' toolbar group in your application completely.

trsteel_ckeditor:
    class: Trsteel\CkeditorBundle\Form\Type\CkeditorType
    toolbar: ['document', 'clipboard', 'editing', '/', 'basicstyles', 'paragraph', 'links', '/', 'insert', 'styles', 'tools']
    toolbar_groups:
        document: ['Source']

You can create additional toolbar groups. Just create the group and specify the items. As you can see in the above config the 'document' toolbar group has been overwritten and only shows the 'Source' icon.

Step 5: Add the editor to a form

Example form:

<?php

$form = $this->createFormBuilder($post)
            ->add('title', 'text')
            ->add('content', \Trsteel\CkeditorBundle\Form\Type\CkeditorType::class, array(
                'transformers'                 => array('html_purifier'),
                'toolbar'                      => array('document','basicstyles'),
                'toolbar_groups'               => array(
                    'document' => array('Source')
                ),
                'ui_color'                     => '#fff',
                'startup_outline_blocks'       => false,
                'width'                        => '100%',
                'height'                       => '320',
                'language'                     => 'en-au',
                'filebrowser_image_browse_url' => array(
                    'url' => 'relative-url.php?type=file',
                ),
                'filebrowser_image_browse_url' => array(
                    'route'            => 'route_name',
                    'route_parameters' => array(
                        'type' => 'image',
                    ),
                ),
            ))
            ->getForm()
;

Note: All parameters from config.yml can be overwritten in a form (excluding 'class').

Step 6: Configure data transformers

Data transformers will automatically update the html content when the form is processed.

The bundle comes with a html purifier transformer thanks to https://github.com/ezyang/htmlpurifier

If you do not want any transformers enabled you should disable them by:

  1. Disable globally in the config:
trsteel_ckeditor:
    transformers: []
  1. Disable them on a particular form:
<?php

$form = $this->createFormBuilder($post)
            ->add('title', 'text')
            ->add('content', \Trsteel\CkeditorBundle\Form\Type\CkeditorType::class, array(
                'transformers' => array(),
            ))
            ->getForm()
;

Next Steps

统计信息

  • 总下载量: 621.85k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 100
  • 点击次数: 1
  • 依赖项目数: 13
  • 推荐数: 21

GitHub 信息

  • Stars: 97
  • Watchers: 9
  • Forks: 57
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2012-01-25