CKEditor4 メモ

Bookmark this on Google Bookmarks
LINEで送る
Pocket

バージョン4になっていた。
専用の編集画面を使わずに公開しているページ内でコンテンツを編集できるInline editingという機能も追加されていた。
http://ckeditor.com/

CKEditor使い方(英語)
http://docs.ckeditor.com/#!/guide/dev_configuration

ファイル管理は、無料のKCFinderでも行える。(純正のCKFinderは、99ドルから)
http://kcfinder.sunhater.com/

CakePHPへの組み込みは、Wysiwyg Helpers Plugin
https://github.com/josegonzalez/cakephp-wysiwyg

– Tips –
エディタ内にCSSファイルを反映する方法
複数ファイルも指定できる。
プレビューにも反映される。

config.contentsCss = '/css/mysitestyles.css';
config.contentsCss = ['/css/mysitestyles.css', '/css/anotherfile.css'];

参考
CKEditorで編集エリアに複数の外部CSSを指定する方法
http://akira.matrix.jp/?p=229

Toolbarのカスタマイズ
バージョン3の情報だけど4でも使える
Full状態のセッティングが載っているので、ここから削除していくという方法もある。
http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Toolbar

下記は、
改行をデフォルトのPタグからBRタグへ変更、
外部のCSSファイルを反映、
ツールバーにすべてのボタンを表示(不要なものを削る前の状態)、
ファイル管理用のパスをKCFinderに指定している。

config.js

CKEDITOR.editorConfig = function(config) {
    CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR;
    CKEDITOR.config.contentsCss = '/css/mysitestyles.css';
    CKEDITOR.config.toolbar = [
    { name: 'document', items : [ 'Source','-','Save','NewPage','DocProps','Preview','Print','-','Templates' ] },
    { name: 'clipboard', items : [ 'Cut','Copy','Paste','PasteText','PasteFromWord','-','Undo','Redo' ] },
    { name: 'editing', items : [ 'Find','Replace','-','SelectAll','-','SpellChecker', 'Scayt' ] },
    { name: 'forms', items : [ 'Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 
        'HiddenField' ] },
    '/',
    { name: 'basicstyles', items : [ 'Bold','Italic','Underline','Strike','Subscript','Superscript','-','RemoveFormat' ] },
    { name: 'paragraph', items : [ 'NumberedList','BulletedList','-','Outdent','Indent','-','Blockquote','CreateDiv',
    '-','JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock','-','BidiLtr','BidiRtl' ] },
    { name: 'links', items : [ 'Link','Unlink','Anchor' ] },
    { name: 'insert', items : [ 'Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak','Iframe' ] },
    '/',
    { name: 'styles', items : [ 'Styles','Format','Font','FontSize' ] },
    { name: 'colors', items : [ 'TextColor','BGColor' ] },
    { name: 'tools', items : [ 'Maximize', 'ShowBlocks','-','About' ] }
    ];
    config.filebrowserBrowseUrl = '/js/kcfinder/browse.php?type=files';
    config.filebrowserImageBrowseUrl = '/js/kcfinder/browse.php?type=images';
    config.filebrowserFlashBrowseUrl = '/js/kcfinder/browse.php?type=flash';
    config.filebrowserUploadUrl = '/js/kcfinder/upload.php?type=files';
    config.filebrowserImageUploadUrl = '/js/kcfinder/upload.php?type=images';
    config.filebrowserFlashUploadUrl = '/js/kcfinder/upload.php?type=flash';
};