TYPO3 - TCA 迁移 - 信息性还是待办事项?

TYPO3 - TCA Migrations - Informational or ToDo?

我是 typo3 的新手。我的一个朋友问,我能不能帮他升级他的安装,因为我是开发人员。所以我检查了我是否可以做到。 我做了几个步骤将安装从 7.6.9 升级到 8.7.3。现在我在 important actions 部分中结束了安装工具。有一点TCA migrations

上面写着:

TCA migrations need to be applied Check the following list and apply needed changes.

The icon path of wizard "link" from TCA table "tx_myredirects_domain_model_redirect['columns']['destination']['config']['wizards']['link']['icon']"has been migrated to tx_myredirects_domain_model_redirect['columns']['destination']['config']['wizards']['link']['icon']" = 'actions-wizard-link'. ...

这只是信息性的,还是我必须修改所列内容中的某些内容?

再次抱歉,如果这是一个新手问题,但我实际上是 typo3 的新手。

这将显示哪些 TCA 字段已被识别为具有旧格式并且在加载配置文件时已被转换。

虽然进行这些更改并保持清洁是一种很好的做法,但严格来说这不是必需的。

提示:我宁愿在升级之前查看那里,因为已弃用的内容在旧版本中可能仍有升级路径,但在最新版本中 none。

如果需要迁移 TCA 的扩展不是您创建的,那么不,您真的不需要更改它们。扩展的作者应该这样做,因为如果你更改它们然后作者发布更新,那么你的所有更改都将丢失。

如果扩展是自定义扩展,那么迁移它们会更好。这样您就可以避免错误和不必要的功能障碍。

如果您有站点包,则可以覆盖 TCA 并为它们提供新定义。这样,如果作者发布更新,您的 TCA 就不会丢失。为此,您可以按照以下说明操作:

Extending TCAs

例如:

your_sitepackage/Configuration/TCA/Overrides/tx_tablename_domain_model_modelname

$GLOBALS['TCA']['tx_tablename_domain_model_modelname']['columns']['columnYouNeedToChange'] = [

'label' => 'input_29 link',
    'config' => [
        'type' => 'input',
        'wizards' => [
            'link' => [
            'type' => 'popup',
            'title' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:header_link_formlabel',
            'icon' => 'actions-wizard-link',
            'module' => [
               'name' => 'wizard_link',
            ],
            'JSopenParams' => 'height=800,width=600,status=0,menubar=0,scrollbars=1',
            'params' => [
                'blindLinkOptions' => 'folder',
                'blindLinkFields' => 'class, target',
                'allowedExtensions' => 'jpg',
            ],
        ],
    ],
]

例如,这将解决您分享的图像的第一个问题。您只需要替换 table 名称。 (那是TYPO3v8。TYPO3 v9在TCA方面有更多变化)

如果您不确定该列的路径 ($GLOBALS['TCA']['tx_tablename_domain_model_modelname']['columns']['columnYouNeedToChange']),请按照以下步骤操作:

@Thomas Löffler 是对的。在 GitHub 上创建一个问题并让作者知道需要进行一些更改将非常有用。

此致