
- MODX 3
- PHP 8.2


Типовые сбои в manager и при разработке пакета. FAQ для редакторов: FAQ.
which_editor = mxEditorJs, use_editor = Да, mxeditorjs.enabled = Даmxeditorjs.js?v=...При ошибке инициализации Editor.js показывается fallback на textarea.
Console:
console.log(window.mxEditorJsConfig);Ожидаются: connectorUrl, resourceId, enabledTools, galleryMaxCount, locale.
| Симптом | Проверка |
|---|---|
| 403 / Permission denied | Права save_document, сессия manager |
| Файл слишком большой | mxeditorjs.max_upload_size, upload_max_filesize в PHP |
| Неверный тип | mxeditorjs.allowed_image_types, MIME через finfo_file |
| Папка недоступна | Media Source ID, запись в image_upload_path / file_upload_path |
Патч patch-package для @editorjs/attaches не применился. В каталоге пакета:
npm install
npm run buildСкопируйте mxeditorjs.js в assets/components/mxeditorjs/js/. После npm update @editorjs/attaches пересоберите patch: npx patch-package @editorjs/attaches.
URL: assets/components/mxeditorjs/connector.php. В Network смотрите action, тело { success, message }. HTTP-код при ошибке auth — 200, не 403.
Типовые message: validation errors от ContentValidator.
Два рендерера: клиент renderPreviewHtml (форма) и сервер HtmlRenderer (content/save). Сверьте логику блока в обоих. См. Архитектура.
Resolver добавляет gallery в available_tools и профили. Проверьте JSON mxeditorjs.profiles, если редактировали вручную. Очистите кэш.
MODX читает не Extras/, а:
core/components/mxeditorjs/assets/components/mxeditorjs/Синхронизация:
cp -r Extras/mxEditorJs/core/components/mxeditorjs/ core/components/mxeditorjs/
cp -r Extras/mxEditorJs/assets/components/mxeditorjs/ assets/components/mxeditorjs/Или rsync:
rsync -av --delete Extras/mxEditorJs/core/components/mxeditorjs/ core/components/mxeditorjs/
rsync -av --delete --exclude='node_modules' Extras/mxEditorJs/assets/components/mxeditorjs/ assets/components/mxeditorjs/SELECT id, name, static, static_file FROM modx_site_plugins WHERE name = 'mxEditorJs';При static = 1 правьте Extras/.../mxeditorjs.plugin.php без пересохранения элемента в manager.
rm -rf core/cache/mgr/ core/cache/includes/ core/cache/scripts/Или Настройки → Очистить кэш.
mxeditorjs_json, mxeditorjs_tv_{id}_json[mxEditorJs] ошибки syncToTextarea / renderPreviewHtmlmxeditorjs_content, поле content_hashgrep '\[mxEditorJs\]' core/cache/logs/error.log| Симптом | Решение |
|---|---|
| Редактор не грузится | npm run build, скопировать mxeditorjs.js |
| MutationObserver error | Пересобрать и скопировать JS |
| TV не инициализируется | Textarea + Rich Text = Да |
| Attaches без диалога | npm install, patch-package |
| Gallery нет в toolbar | Проверить available_tools, профиль, кэш |