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

#html #templates #tags #ckeditor

#HTML #шаблоны #Теги #ckeditor

Вопрос:

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

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

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

  1. Кроме того, я бы поместил в свой шаблон один div (с определенным идентификатором), который пользователь ВООБЩЕ НЕ МОЖЕТ изменить.

Возможно ли это каким-либо образом?

Спасибо

Ответ №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, позволяющий использовать только определенный контент в наборе «заблокированных» элементов, но, похоже, это большая работа, если все, что вы хотите, это обернуть пользовательский контент с помощью div . Вы можете просто добавить это div позже при сохранении динамического содержимого или при его отображении где-нибудь.