
- MODX 3
- PHP 8.2


mxeditorjs).Плагин на OnDocFormPrerender запускает редактор, когда на странице появляется поле контента или TV с richtext.
Сохранение через форму ресурса (основной путь):
renderPreviewHtml) в textarea и скрытые поляmodResource.content / TVOnBeforeDocFormSave пишет JSON в sidecarФорма не вызывает connector content/save. Он нужен для AJAX и своих интеграций. Подробнее: Потоки.
which_editor = mxEditorJs в этом TV будет тот же блочный редактор.JSON TV хранится в mxeditorjs_tv_content. HTML попадает в textarea TV при сохранении.
После сохранения контент ресурса существует в двух видах:
modResource.content (вывод на сайте)В шаблоне:
[[*content]]{$_modx->resource.content}TV с Editor.js: плейсхолдер [[*my_richtext_tv]] или Fenom. На сайте всегда готовый HTML.
Конвертация HTML в поле контента в формат Editor.js:
resource_id, при необходимости dry_run=1 (предпросмотр), затем confirmed=1 для перезаписи.dry_run в ответе: preview (блоки) и blocks_count. При успехе: migrated, blocks_count, overwritten, html.После confirmed миграция пишет sidecar и HTML-снимок в modResource.content (HtmlRenderer, как content/save). [[*content]] на сайте обновляется без повторного сохранения формы.
В Form Tabs у колонки "inputTVtype": "richtext". MIGX сопоставляет тип с migx + which_editor → migxmxeditorjs. Значение — HTML в JSON строки. Sidecar нет. Перед закрытием окна вызовите MxEditorJsFlush.
Набор блоков задаёт mxeditorjs.profile или mxeditorjs.enabled_tools. См. Системные настройки.
{resource_id}).0 = без лимита).<img> в HTML-снимке. См. Системные настройки.HTML-снимок Gallery собирается при сохранении: клиент renderPreviewHtml или сервер HtmlRenderer (content/save, content/migrate). Разметка:
<figure class="mxeditorjs-gallery mxeditorjs-gallery--fit">: сетка (режим Fit)<figure class="mxeditorjs-gallery mxeditorjs-gallery--slider">: горизонтальный скролл (режим Slider)gallery-front.css подключается только в менеджере (предпросмотр в форме). На сайте CSS сам не грузится.
Подключите стили в шаблоне или теме:
<link rel="stylesheet" href="/assets/components/mxeditorjs/css/gallery-front.css">Либо скопируйте правила из assets/components/mxeditorjs/css/gallery-front.css в CSS темы.
Блок embed выводит <div class="mxeditorjs-embed"><iframe ...></iframe></div>. Сервисы @editorjs/embed заданы в mxeditorjs.ts (секция services). Системной настройки нет. Свой сервис добавляют в исходниках. См. Архитектура.