【问题标题】:Add source button to Magnolia CMS richText control向 Magnolia CMS 富文本控件添加源按钮
【发布时间】:2015-07-04 20:28:05
【问题描述】:

我需要在我的 RichText 控件上启用源按钮(我必须在其中放置 HTML 代码),并且我已经按照本教程进行操作: https://documentation.magnolia-cms.com/display/DOCS/Rich+text

所以我在标准模板套件/对话框/通用/控件/文本中添加了以下设置源 - 真 - 布尔值,但它对我不起作用。

我正在使用 Magnolia CMS 5.2.4。谁能告诉我如何打开这个按钮,或者是否有另一个控件可以放置 html 代码?

最好的问候 一月

【问题讨论】:

  • 对我有用:我已经下载并安装了 5.2.4 Magnolia Tomcat 包,然后在 sktTextImage 对话框中添加了一个 source 属性,设置为 true。现在我可以在Text and Image 组件中编辑文本字段的来源。
  • 你好约瑟夫。感谢您的信息。所以也许我做错了什么。我创建了自己的开花组件,其中我使用了richText。之后,我在标准模板工具包/对话框/通用/控件/文本中设置了源属性,如前所述。所以看来我在错误的地方做这件事。更改 stTextImage 对我不起作用,因为我认为我没有使用此组件。
  • 我认为在我正在使用的配置上下文中添加这一点很重要,并且所有组件都是在 spring mvc 应用程序中编写的,我也有自己的模板。当我运行演示功能应用程序时,源按钮就在那里。我还可以使用我自己的模板在我的开花应用程序中找到无法访问的 html 组件。
  • 我已经要求@sigget(Blossom 模块的作者)在这里添加他的两分钱。

标签: richtext magnolia


【解决方案1】:

您是否使用 Blossom 定义了对话框?如果是这样,它们与 STK 对话完全不同。如果您有类似以下示例的内容,则需要更改代码以使用源按钮设置富文本区域。

@TabFactory("heading")
public void headingTab(UiConfig cfg, TabBuilder tab) {

    FieldConfig fields = cfg.fields;

    tab.fields(
        fields.text("headingtitle").i18n().required(),
        fields.richText("headingtext").i18n().required()
    );
}

上面的例子可以通过定义富文本字段然后修改定义来修改。

@TabFactory("heading")
public void headingTab(UiConfig cfg, TabBuilder tab) {

    FieldConfig fields = cfg.fields;

    RichTextFieldBuilder richText = fields.richText("headingtext").i18n().required();
    richText.definition().setSource(true);

    tab.fields(
        fields.text("headingtitle").i18n().required(),
        richText
    );
}

【讨论】:

  • 谢谢 Chris J。它对我有用。但是我还有一个问题,每当我将 html 代码放在那里,切换到普通视图并切换回源视图时,html 代码代码都会更改。这对我来说非常重要,可以按原样保存原始 html 代码并将其作为 html 打印在网页上。是否可以强制富文本编辑器不播放插入的文本?
  • 嗨,约翰尼,很高兴听到这有帮助。我建议您为此问题打开一个新问题,以防其他人可以比我更快地帮助您。
  • 另外,如果我的帖子回答了你的问题,你能把它标记为这样吗?节省更多人问同样的事情。
猜你喜欢
  • 2016-11-25
  • 2014-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多