从Wagtail RichTextField链接选择器中删除“内部链接”选项

问题描述 投票:3回答:1

我的公司正在将Wagtail作为无头API运行,更多地将Wagtail用作存储少量内容而不是整个页面的方式。因此,偶尔会有一些对我们没有意义的功能。在这种情况下,这就是“内部链接”功能。由于我们本身不管理“页面”,因此我想从富文本字段上的选择器中删除此选项,如下所示。

enter image description here

我已经确定了几个可以删除的管理模板,以删除此功能,但我想首先查看是否有一些东西可以简单地禁用此“内部链接”选项,以便它甚至不显示。

_link_types.html template将允许我删除“内部链接”作为选择,但Wagtail似乎默认为“内部链接”,这意味着即使该选项消失了,“内部链接”选择器仍会显示。除非有一个可以关闭的简单选项,我应该在哪里查看默认选择为“外部链接”?

wagtail wagtail-admin
1个回答
2
投票
请参阅文档以获取Wagtail Hooks的说明。

步骤1-隐藏内部链接选项

使用挂钩insert_editor_css注入一些CSS以“隐藏”第一个链接。
    这与您尝试的insert_editor_css模板替代实现了相同的目标,但仅将其“作用域”到了编辑器模态。
  • 这很重要,因为您希望避免破坏“移动页面”以及显示页面选择器的情况。 css有点笨拙,但希望能完成工作。

  • 步骤2-将内部链接选项替换为模态的外部链接
  • 使用钩子_link_types覆盖insert_editor_js值,这将再次仅在编辑器页面上&仅用于模态。

    • 将此值设置为所需的新“默认”,在下面的代码中,我们已将其设置为外部链接选项。
    • 您可以看到如何在insert_editor_js模板中全局设置这些值。
  • 代码
  • window.chooserUrls.pageChooser

    editor_js.html

  • © www.soinside.com 2019 - 2024. All rights reserved.