2012年1月8日日曜日

CS-Cart HTMLエディタ「CKEditor」の出力フォーマットを変更する

CKEditorの出力ソースをカスタマイズする方法
CKEditorはデフォルトだとソースを勝手にインデントしたり改行を入れるので、それを制御する。
/js/editors/ckeditor.editor.js の CKEDITOR.replace(elm.attr('id'), {}); の次あたり(26行目付近)に
CKEDITOR.on('instanceReady', function(ev) {
    ev.editor.dataProcessor.writer.indentationChars = '';
    var tags = ['div',  'h1','h2','h3','h4','h5','h6', 'p', 'ul', 'ol', 'li', 'dl', 'dt', 'dd', 'table', 'tbody', 'tr', 'th', 'td', 'pre', 'address'];
    for (var key in tags) {
        ev.editor.dataProcessor.writer.setRules(tags[key], {
            breakAfterOpen : false
        });
    }
});

editor.dataProcessor.writer.indentationChars でインデント文字を指定する。タブの場合は\t、スペースの場合は' '、インデントさせない場合は空白。
editor.dataProcessor.writer.setRules で指定タグで改行させないを指定する。
http://cksource.com/forums/viewtopic.php?t=14493

0 件のコメント:

コメントを投稿