2012-04-16 5 views
3

Я ищу любой трюк для настройки моего плагина с аргументами в конфигурации CKEditor. Мне нужно передать некоторые параметры, которые я могу передать только при отображении моего представления.CKeditor: настроить плагин через конфигурацию CKeditor

Я хочу что-то вроде этого (образец с JQuery адаптером):

jQuery('textarea.wysiwyg').ckeditor(function(){},{ 
     'width'    : '640px', 
     'resize_maxWidth' : '640px', 
     'extraPlugins'  : 'my_plugin', 
     'toolbar'   : [['Bold', 'Italic', '-', 'NumberedList', 'BulletedList'],['Link', 'Unlink','-','MyPlugin'],['Paste','PasteFromWord'],['Source']] 
     'my_plugin'   : { 
       'param1'  : 'value1', 
       'param2'  : 'value2', 
     } 

}); 

Но я have'nt нашел еще какую-либо информацию о плагин конфигурации с CKEditor.

ответ

4

Я отвечаю на свой вопрос: Метод плагина init получает редактор как аргумент, редактор содержит config (который можно назвать editor.config), поэтому вы можете получить доступ ко всей конфигурации, определенной при создании экземпляра ckeditor.

С моим образцом в моем первом посте, вы можете получить доступ к конфигурации в плагине, как таким образом:

CKEDITOR.plugins.add('my_plugin', 
{ 
    init: function(editor) 
    { 
     var param1 = editor.config.value1; 
    } 
} 

Я думаю, что это не самый лучший способ сделать, потому что он добавляет некоторые дополнительные свойства CKEDITOR.config опытный образец. Было бы лучше иметь свойство CKEDITOR.config.extraConfig, которое представляет собой карту свойств с помощью плагинов.

+0

работает для меня. Но вы, конечно, имели в виду 'editor.config.param1' вместо' editor.config.value1'. – Tobias

1

Передайте значения плагину во время инициализации редактора

jQuery('textarea.wysiwyg').ckeditor(function(){}, 
{ 
     config.extraConfig : { 'param1' : 'value1', 'param2' : 'value2' } 
}); 

и получить доступ к значениям в плагине

CKEDITOR.plugins.add('my_plugin', 
{ 
    init: function(editor) 
    { 
     var param1 = editor.extraConfig.param1; 
     var param2 = editor.extraConfig.param2; 
    } 
} 
Смежные вопросы