CKeditor - разные пресеты на одной странице
Я использую CKeditor на своей веб-странице. И я хочу установить разные пресеты на одной странице. Например, я хочу использовать Standard CKeditor в одной текстовой области и Basic в другой...
Кто-нибудь знает, как я могу это сделать?
Большое спасибо!
1 ответ
Вам нужно скачать версию CKEditor, которая содержит все плагины, которые вы хотите использовать в самой продвинутой конфигурации, а затем "урезать" ее при инициализации редактора, который вы хотите иметь более ограниченным.
Например, если вам нужен один редактор со стандартным пресетом и один с базовым, вам следует скачать редактор со стандартным пресетом, потому что в нем будут все плагины, необходимые для базового пресета. Затем инициализируйте один редактор без каких-либо дополнительных настроек:
CKEDITOR.replace( 'editor-std' );
И второй с параметрами, которые используются основным редактором:
CKEDITOR.replace( 'editor-basic', {
// Plugins used by basic preset.
plugins: 'about,basicstyles,clipboard,floatingspace,list,indentlist,enterkey,entities,link,toolbar,undo,wysiwygarea',
// The toolbar groups arrangement, optimized for a single toolbar row.
toolbarGroups: [
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
{ name: 'forms' },
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
{ name: 'links' },
{ name: 'insert' },
{ name: 'styles' },
{ name: 'colors' },
{ name: 'tools' },
{ name: 'others' },
{ name: 'about' }
],
// The default plugins included in the basic setup define some buttons that
// are not needed in a basic editor. They are removed here.
config.removeButtons: 'Cut,Copy,Paste,Undo,Redo,Anchor,Underline,Strike,Subscript,Superscript',
// Dialog windows are also simplified.
config.removeDialogTabs: 'link:advanced'
} );
Вы также можете сохранить эту конфигурацию в файл, похожий на config.js
который вы найдете в главном каталоге CKEditor и будете использовать его следующим образом:
CKEDITOR.replace( 'editor-basic', { customConfig: 'config-basic.js' } );
Где взять конфиги пресетов?
Конфигураций, готовых к использованию, нет, но вы можете найти все необходимые настройки в репозитории пресетов CKEditor. Как вы обнаружите, я использовал basic-ckeditor-config.js
файл и расширил его с помощью плагинов из basic-build-config.js
,