0

我需要将预告片作为纯文本,在最新视图中没有任何链接或文本格式,有可能。它是为相应的 ViewHelper 还是为不同的方法提供的?

HTML 实体,不应作为&举例&

4

2 回答 2

1

新闻列表使用每个项目的部分 ( Resources/Private/Partials/List/Item.html) 呈现。在那里,您可以看到用于渲染预告片的行:

{newsItem.teaser -> f:format.crop(maxCharacters: '{settings.cropMaxCharacters}', respectWordBoundaries:'1') -> f:format.html()}

如果您删除最后一个视图助手f:format.html(),那么它不会被转换为 HTML。如果将其替换为f:format.raw()(如果预告片中有 HTML),则 HTML 将按原样输出,无需将 < 转换为 < 和 > 到 > 等等

覆盖部分时,您不应该直接修改扩展,而是以升级安全的方式进行。为此,将它们放在您的站点扩展中或放入fileadmin/并将该部分路径添加到 TS 配置中:

plugin.tx_productview {
    view {
        partialRootPaths.1 = [path to partials folder]
    }
}

对于news,还有一个特殊的机制:可以设置一个常数

plugin.tx_news.view.partialRootPath = […]

到路径。

于 2016-09-11T16:50:49.963 回答
1

使用<f:format.stripTags>Viewhelper。为了确保所有 html 实体都被解码使用<f:format.htmlentitiesDecode> 所以你可以使用:

<f:format.stripTags>
  <f:format.htmlentitiesDecode>
    {newsTeaserVar}
  </f:format.htmlentitiesDecode>
</f:format.stripTags>
于 2016-09-11T16:56:08.237 回答