You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TYPO3 8 LTS中移除内容/页面的「Translate to」标识

解决TYPO3 8 LTS移除翻译内容「[Translate to XY]」字符串的问题

嘿,我刚好踩过这个坑!TYPO3 8 LTS的TCA配置逻辑和旧版本不一样,直接沿用ext_tables.php里的老写法肯定行不通,我给你整理了靠谱的解决步骤:

1. 用官方推荐的TCA覆盖方式

TYPO3 8开始不再建议直接在ext_tables.php里修改$TCA,而是通过自定义扩展的TCA Override文件来调整配置。你需要先做这些准备:

  • 打开你的自定义扩展目录,创建(如果没有的话)Configuration/TCA/Overrides/文件夹
  • 针对内容元素(tt_content表)创建tt_content.php文件,针对页面(pages表)创建pages.php文件

2. 编写具体的覆盖代码

针对内容元素(tt_content)的字段:

在tt_content.php里写入以下代码:

<?php
defined('TYPO3_MODE') || die();

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::overrideTca(
    'tt_content',
    [
        'columns' => [
            'header' => [
                'l10n_mode' => '',
            ],
            'bodytext' => [
                'l10n_mode' => '',
            ],
            // 如果你还有其他需要移除提示的字段(比如subheader、header_link等),都可以在这里添加
        ],
    ]
);

针对页面(pages)的字段:

在pages.php里写入以下代码:

<?php
defined('TYPO3_MODE') || die();

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::overrideTca(
    'pages',
    [
        'columns' => [
            'title' => [
                'l10n_mode' => '',
            ],
            'subtitle' => [
                'l10n_mode' => '',
            ],
            // 按需添加其他页面字段
        ],
    ]
);

3. 必做步骤:清除全部缓存

修改完TCA配置后,一定要去TYPO3后端的「清除缓存」菜单里选择清除全部缓存(包括配置缓存),否则新的配置根本不会生效!

原理说明

旧版本直接赋值$TCA的方式,在TYPO3 8的TCA加载机制里已经失效了。我们用ExtensionManagementUtility::overrideTca()方法,能正确把自定义配置合并到系统默认TCA中——把l10n_mode设为空字符串,就会关闭系统默认的「[Translate to XY]」前缀提示行为。

内容的提问来源于stack exchange,提问作者tah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 11:01:33