Dexterity类型视图的H1标签(用于标题字段)输出,通常如下所示:
< 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 ...>
,则会逐字显示它们。这种定制有一种简单的方法吗?
答案 0 :(得分:4)
“标题”字段是纯文本字段,因此在页面呈现时会转义任何文本。这是设计的。
如果您明确要允许输入HTML,则需要自定义类型的标题显示,并将structure
添加到<h1>
元素:
<h1 tal:content="structure context/title">Title</h1>
structure
TALES关键字禁用HTML转义。 这允许编辑器插入任意HTML 。
您可能希望切换为使用RichText
字段而不是默认TextLine
,因此您可以对其应用自动安全HTML转换。请参阅Dexterity开发人员手册中的Rich text, markup and transformations chapter。