首页 > 解决方案 > TYPO3 RTE 转换

问题描述

我有一个 TYPO3 6.2 版网站,我正在开发一个 AMP 版本。

我使用 URL 中的条件来加载同一 TYPO3 页面的不同版本,具体取决于页面版本请求是否为 AMP。

普通版页面:

https://www.novethic.fr/actualite/environnement/climat/isr-rse/rencontre-avec-danone-un-des-rares-francais-a-aligner-sa-strategie-sur-l-objectif-2- c-145150.html

AMP 版本的页面

https://www.novethic.fr/amp/actualite/environnement/climat/isr-rse/rencontre-avec-danone-un-des-rares-francais-a-aligner-sa-strategie-sur-l-objectif- 2-c-145150.html

一切正常,除非我的页面包含插入 RTE 的图像

在这种情况下,当要求的版本是 AMP 时,我需要转换<img><amp-img>插入到 RTE 中的图像。

当调用 AMP 版本时,我已经有一个全局 var 条件来加载自定义 TS。

但不知道如何转换<img><amp-img> 关于如何实现这一目标的任何想法?

标签: typo3amp-htmlrte

解决方案


如果它只是标签名称的替换,您可以尝试在以下级别之一上使用(条件)字符串替换:

  • 整个页面。
    你可以做一个stdWrap.replacement,但这可能不适用于缓存的内容

  • 流畅的页面内容。
    只需使用 viewhelper 来替换渲染内容的文本。甚至可能是打字稿 VH:
    ( <f:cObject typoscriptObjectPath="lib.img2ampimg">{content}</f:cObject>)

  • 排版中的页面内容。
    根据您是否使用 TS 呈现内容,您可能会在stdWrap.replacement此处添加:

.

page { 
    10 = FLUIDTEMPLATE
    10 {
        :
        variables {
            content < styles.content.get
            :
        }
    }
}

[--your amp condition--]
    page.10.variables.content.stdWrap.replacement {
        1.search = <img
        2.replace = <amp-img
    }
[global]

推荐阅读