CropViewHelper 显示 HTML 个标签
CropViewHelper show HTML tags
我在模板中使用 format.crop ViewHelper 来裁剪文本。
输出显示HTML个标签的问题:
查看助手:
<f:format.crop maxCharacters="250" respectHtml="false">{book.description}</f:format.crop>
输出HTML:
<p>This is <p> and </p> HTML tags appears</p>
respectHtml="false"
和 respectHtml="true"
我都试过了,但都不行。
Fluid 默认转义 HTML 以防止跨站脚本漏洞。
这是设计使然。集成商需要针对特定区域禁用此行为。这可以通过使用 f:format.html
或 f:format.raw
来完成,而 raw
将阻止所有安全机制,因此应该很少使用。
format.html
确实应用了另一种配置,它定义了哪些 HTML 标签和属性是允许的:https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/Functions/Parsefunc.html
你的具体例子可以是:
<f:format.html>
<f:format.crop maxCharacters="250" respectHtml="1">
{book.description}
</f:format.crop>
</f:format.html>
或:
<f:format.raw>
<f:format.crop maxCharacters="250" respectHtml="1">
{book.description}
</f:format.crop>
</f:format.raw>
如果愿意,您还可以使用内联符号:
{book.description -> f:format.crop(maxCharacters: 250, respectHtml: true) -> f:format.html()}
我建议尊重 HTML,否则 HTML 可能会被破坏,因为结束标记可能会被切断。
如果您根本不需要 HTML 输出,请在应用 f:format.crop
之前使用 f:format.stripTags
,以便事先删除 HTML 标签。
我在模板中使用 format.crop ViewHelper 来裁剪文本。
输出显示HTML个标签的问题:
查看助手:
<f:format.crop maxCharacters="250" respectHtml="false">{book.description}</f:format.crop>
输出HTML:
<p>This is <p> and </p> HTML tags appears</p>
respectHtml="false"
和 respectHtml="true"
我都试过了,但都不行。
Fluid 默认转义 HTML 以防止跨站脚本漏洞。
这是设计使然。集成商需要针对特定区域禁用此行为。这可以通过使用 f:format.html
或 f:format.raw
来完成,而 raw
将阻止所有安全机制,因此应该很少使用。
format.html
确实应用了另一种配置,它定义了哪些 HTML 标签和属性是允许的:https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/Functions/Parsefunc.html
你的具体例子可以是:
<f:format.html>
<f:format.crop maxCharacters="250" respectHtml="1">
{book.description}
</f:format.crop>
</f:format.html>
或:
<f:format.raw>
<f:format.crop maxCharacters="250" respectHtml="1">
{book.description}
</f:format.crop>
</f:format.raw>
如果愿意,您还可以使用内联符号:
{book.description -> f:format.crop(maxCharacters: 250, respectHtml: true) -> f:format.html()}
我建议尊重 HTML,否则 HTML 可能会被破坏,因为结束标记可能会被切断。
如果您根本不需要 HTML 输出,请在应用 f:format.crop
之前使用 f:format.stripTags
,以便事先删除 HTML 标签。