Я работал над подобной проблемой всего несколько дней назад, поэтому я удалил плагин, который сделал.
Создайте папку в каталоге плагинов CK под названием «myinsert». Создайте файл с именем plugin.js и вставьте в него следующее:
CKEDITOR.plugins.add( 'myinsert',
{
init: function( editor )
{
editor.addCommand( 'insertMycode',
{
exec : function( editor )
{
var timestamp = new Date();
editor.insertHtml( 'Some Code Here.' );
}
});
editor.ui.addButton( 'Mycode',
{
label: 'Insert Timestamp',
command: 'insertMycode',
icon: this.path + 'tag.gif'
} );
}
} );
Вам нужно будет включить значок в этот каталог, иначе кнопка не будет отображаться должным образом.
Далее, в вашем скрипте для вызова вашего редактора, поместите это: extraPlugins : 'myinsert',
Например:
<script type="text/javascript">
CKEDITOR.replace( 'editor1', {
extraPlugins : 'myinsert',
toolbar : 'EditPost',
uiColor : '#BBB',
});
</script>
Затем просто добавьте имя функции в настройки панели инструментов, где бы это ни было.
{ name: 'tools', items : [ 'Maximize', 'ShowBlocks','-','About', 'Mycode' ] }
Если вы переименуете функцию или папку, просто убедитесь, что они должны иметь одинаковые имена. Кроме того, имя, которое вы вводите на панели инструментов, должно соответствовать имени в editor.ui.addButton()