Ответ 1
Если вам нужно сделать недопустимую разметку, рассмотрите текстовое поле. Не знаете, насколько это изменит существующую модель расширения и контента, но вы можете ввести что-либо в текстовое поле, в том числе то, что кажется своего рода "разделенным" или разделительным заполнителем.
</div><div class='Page'>
Чтобы сохранить расширенные текстовые функции и следовать некоторым типичным практикам Tridion, рассмотрите одно из следующих.
Завершить все изменения разметки сразу
Предполагая, что ваша окончательная разметка будет иметь открытую <div>
и закрытие </div>
, учитывая, что ваша добавка завершает весь набор выделенного богатого текста. В процессе и перед обновлением компонента разрешите автору выбрать местоположение "split" и сохранить все обновление в RTF.
Создайте "расщепления" со встроенными схемами и код шаблона
Встраиваемые поля схемы - гораздо более простой способ разделить контент. Авторы создают новый набор встроенных полей, а код шаблона может изменить это на вкладки, абзацы или то, что может быть страницами (pagination?) В вашем случае.
A "Встроенная схема абзаца" может обрабатывать этот прецедент, насколько я понимаю.
<!-- TemplateBeginRepeat name="Component.Fields.Paragraph" -->
<div class='Page'>
<!-- author-entered content -->
</div>
<!-- TemplateEndRepeat -->
Это создаст промежуточные множества встроенных полей </div><div class='Page'>
. Он также позволяет изменять класс и тег в будущем без изменений расширения.
Вставить не-HTML "Слить поля" Вместо
См. параметры в сообщении, которое я написал о пользовательских тегах в расширенных текстовых полях, которые включают в себя:
- Классы CSS в проводнике Content Manager, такие как
class="page-split"
. Вы можете даже подгонять это, чтобы выглядеть определенным образом (визуально, например, как<hr/>
), а затем подбирать его так, как вам нужно в окончательной разметке. - Добавьте метки тега поля слияния, такие как "
[[end-page]][[start-page]
" - Пользовательские узлы HTML5, если вы должны
Вы можете вставить любой из них с расширением, необязательно стилизовать их, чтобы посмотреть определенный способ в CME.
Мне нравится предоставлять авторам более простые способы вставки функциональных возможностей в поля расширенного текста, но уловка с вставкой определенного HTML, особенно недействительного HTML, в компоненты заключается в жестком кодировании этой функциональности в контент. Вы столкнетесь с проблемами миграции и изменениями дизайна.
Подумайте о том, как Tridion отделяет дизайн от контента.