Как запустить экземпляр CKEditor с определенным HTML-шаблоном вместо шаблона по умолчанию?

Я довольно новичок в CKEditor, и я бы использовал его таким образом.
Я делаю CKEditor avalaible для пользователей, чтобы создать свою собственную страницу и сохранить ее в БД. Это работает как очарование, но у меня было бы что-то еще.

  1. На каждом новом экземпляре загружайте другой шаблон HTML вместо шаблона defaut ( )

Где можно изменить этот шаблон по умолчанию?

  1. Кроме того, я бы поместил в свой шаблон один div (с определенным идентификатором), который пользователь не может изменить вообще.

Возможно ли это вообще?

Спасибо

1 ответ

  1. Предполагая, что вы используете textareaэлемент для своего редактора, вы можете просто включить свой шаблон в эту текстовую область, как это:

    <textarea id="editor1" rows="10" cols="80">
        This is my template
    </textarea>
    

    Если вам нужно получить шаблон HTML динамически (например, из базы данных), вы можете сделать это при загрузке страницы:

    var template = getMyTemplateHtmlFromDB(); // You need to implement this of course
    document.getElementById("editor1").value = template;
    

    Что касается неприкасаемого divэлемента, вы можете поймать нажатия клавиш во время редактирования и предотвратить попытки изменить этот элемент или даже создать виджет CKEditor, чтобы разрешить только определенное содержимое в наборе «заблокированных» элементов, но кажется, что много работы, если все, что вы хотите, это обернуть пользовательский контент с a div. Вы можете просто добавить это divпозже при сохранении динамического контента или при отображении его где-то.