2

Dexterity 类型视图的 H1 标记(用于 Title 字段)输出,通常如下所示:

<h1 id="parent-fieldname-title" class="documentFirstHeading"> 我的标题</h1>

我想为 H1 标签中的文本添加一些自定义标签,说:

<h1 id="parent-fieldname-title" class="documentFirstHeading"> <span style="text-decoration: line-through;">我的</span> 标题</h1>

这将制作My一个删除线文本。众所周知,如果我<span ...>在标题字段中添加,它们会按字面意思显示。这种定制有没有简单的方法?

4

1 回答 1

4

Title 字段是纯文本字段,因此在页面呈现时任何文本都会被转义。这是设计使然。

如果您明确希望允许输入 HTML,则需要为您的类型自定义标题显示并添加structure<h1>元素中:

<h1 tal:content="structure context/title">Title</h1>

structureTALES 关键字禁用 HTML 转义。这允许编辑器插入任意 HTML

您可能希望切换到使用RichText字段而不是 default TextLine,因此您可以对其应用自动安全 HTML 转换。请参阅 Dexterity 开发人员手册中的富文本、标记和转换章节

于 2013-04-02T10:49:08.173 回答