编辑器不出现.
打开页面,指向内容时无反应,或控件显示但设置对话框从不打开。按顺序排查以下原因。前四个覆盖大多数情况。
我在节点编辑表单上
编辑器在页面本身上运行,不在编辑表单上。保存节点,打开页面并指向内容区。编辑器在修订页面上也保持关闭,例如 /node/12/revisions/34/view.
页面显示产品密钥或许可消息
显示以下消息之一时编辑器保持关闭:
- "DXPR Builder needs a product key to work". 未设置产品密钥。前往 DXPR Studio > DXPR Builder > General
Settings (
/admin/dxpr_studio/dxpr_builder/settings),然后填写 License 版块。 - "Oops, the no-code editor is not loading here". 消息命名原因:用户许可太少、方案的内容项数量限制,或无有效电子邮件地址的账户。遵循 许可和产品密钥错误。
- "Access to DXPR Builder is blocked because of a payment or licensing problem". DXPR 阻止了该网站的域名。请通过消息中的链接联系 DXPR。
控制台显示来自 cdn2.dxpr.com 的 401 或 403 错误
当 Asset source 设为 Cloud,编辑器脚本从以下位置加载 cdn2.dxpr.com 网址中带产品密钥。401 或 403 表示 CDN 拒绝密钥。检查 License 版块,
General Settings,然后遵循 许可和产品密钥错误。 If the requests time out
instead, a firewall blocks the CDN; see 在防火墙后使用 DXPR Builder.
更新后编辑器停止
- 运行
drush updb -y(或访问/update.php). - 运行
drush cr. - 打开一个页面构建器页面并再次保存。
如果日志报告模块文件夹中缺少文件,则服务器上的代码不完整。重新安装代码:
- 删除
modules/contrib/dxpr_builder文件夹。 - 运行
composer require drupal/dxpr_builder. - 运行
drush cr.
重要: 切勿卸载模块来重置。卸载会删除已保存的模板、资料和设置。
控件显示,但设置对话框从不打开
控制台显示 bootstrap is not defined,或关于以下内容的报错
getOrCreateInstance。编辑器的对话框在 Bootstrap 5 JavaScript 上运行。页面没有,或主题加载 Bootstrap 3 或 4。
- 前往 General Settings 并打开 Bootstrap 版块。
- 如果您的主题未加载 Bootstrap 5,设置 Sideload Bootstrap files 为 Bootstrap 5 并点击 Save settings.
- 如果您的主题加载 Bootstrap 3 或 4 JavaScript,请停止加载它或切换到 Bootstrap 5 主题。
控制台显示来自另一脚本的 JavaScript 错误
页面上的另一个脚本破坏了编辑器。在支持工单中,罪魁祸首是 Cookie 同意横幅、标签管理器、MailChimp 嵌入和 New Relic 浏览器代理。主题也会通过 Webpack 包或自己的 Bootstrap 3 或 4 JavaScript 导致问题,JavaScript 压缩器同样如此。
- 前往 Configuration > Development > Performance 并关闭 JavaScript 聚合。重新加载。
- 一次禁用一个同意、分析和监控模块。每次后重新加载。
- 切换到 Olivero 等核心主题测试一次。
结果告诉您的内容:
- 第 1 步修复: 压缩器是原因。编辑器的辅助库(如 Sortable)与页面其余部分聚合,因此
Sortable is not defined指向启用聚合的位置。在 Advanced CSS/JS Aggregation 中,将压缩器从 JSqueeze 改为 JSMin。 - 第 2 步修复: 在编辑页面上保持该模块禁用,或向其维护者报告冲突。
- 第 3 步修复: 主题的 JavaScript 是原因。停止从主题加载 Bootstrap 3 或 4 JavaScript,并设置 Sideload Bootstrap files 为 Bootstrap 5.
页面显示 "The website encountered an unexpected error"
日志显示通过以下位置的堆栈跟踪 DxprBuilderService 命名来自另一模块的 View 或区块类。
对于编辑人员,页面构建器列出每个视图显示和区块插件,以便您添加到页面。对于每位访客,它渲染页面中的区块和视图。任一步骤中一个损坏的视图或区块报错都会导致页面崩溃。
- 打开 Reports > Recent log messages 并找到跟踪中提到的视图或模块。
- 修复或删除该视图,或禁用该模块。
- 清除所有缓存。
编辑器从不在一种内容类型上显示
- 前往 Structure > Content types > (type) > Manage display.
- 将页面构建器字段的格式设为 DXPR Builder.
- 对渲染字段的每个视图模式重复,而不仅是 Default。
注意: 编辑器需要带值的字段来附加。保存节点时,DXPR Builder 填充使用以下内容的空字段 DXPR Builder 格式在 Default 显示。更改格式前保存的节点保持为空:编辑并保存一次。
只有部分用户看到编辑器
针对看不到编辑器的账户检查以下内容:
- 在 People > Permissions (
/admin/people/permissions),该角色拥有 Edit with DXPR Builder. - 该角色也可能编辑该内容,例如 Basic page: Edit any content。编辑器仅为能更新页面的用户加载。
- 该账户有有效的电子邮件地址。许可需要一个。
- 在用户编辑表单上,Exclude from DXPR builder editing 未勾选。
- 在 DXPR Studio > DXPR Builder > User Profiles,该角色的资料拥有 Start editor when page loads 已勾选。关闭时,控件仅在点击容器控件的眼睛图标后出现。
另一位编辑人员锁定了内容
警告显示同事 "The content ... is locked by",容器仅显示 Locked 按钮。该编辑人员点进了容器但尚未保存;保存后锁定解除。请让其保存,或点击 Locked 并确认接管。如果双方继续编辑,以最后保存为准。
确认修复
在隐私窗口中重新加载并指向内容区域。容器栏显示 View mode,More 和 Save,并且控制台没有红色报错。
接下来做什么?
更新后问题 如果编辑器在发布后立即损坏。