gpt4 book ai didi

localization - FAL FileReferences 未在 FE 中本地化

转载 作者:行者123 更新时间:2023-12-04 21:11:42 27 4
gpt4 key购买 nike

在我的模型中的 TYPO3 6.2 中,我有一个名为 documents 的文件的公共(public)字段。 ,它是 ObjectStorage\TYPO3\CMS\Extbase\Domain\Model\FileReference没什么不寻常的:)

问题出在本地化页面上,就在我创建我的 obj 的本地化版本时,它的所有字段都已正确本地化,但不是 documents - 它总是使用默认语言的文件引用:/我读到了有关 Unresolved 错误,但没有指出可行的解决方法......有人可以建议我做什么吗?

如果没有任何帮助,我会自己写FileRef模型,但最好避免这种情况,因为有几个地方需要改变。

我在模型中的领域(getter 和 setter 是标准的)

/**
* Documents
*
* @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\TYPO3\CMS\Extbase\Domain\Model\FileReference>
* @cascade remove
*/
protected $documents = NULL;

在 TCA 中:
'documents' => array(
'exclude' => 1,
'label' => 'Documents',
'config' =>
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'documents',
array('maxitems' => 999)
),
),

最佳答案

TYPO3 的前端有两个错误,如果它是关于覆盖 pages 的翻译.原因是,该表使用了专用表pages_language_overlay保留这些翻译。

翻译页面时,子记录(文件引用)不会复制到新的本地化记录。如果与翻译内容元素相比,行为应该是相同的。修复此行为将仅集成在 TYPO3 CMS 7 和 CMS 8 中,请参阅 issue #78743在接下来的几天/几周内取得进展。

如果您在原始语言记录和翻译记录之间共享文件引用,这意味着翻译记录没有定义单独的文件引用,那么您可以通过修改 TCA 在前端显示翻译页面时解决这些空文件引用。

// put that to some TCA Overrides file, e.g.
// typo3conf/ext/my_ext/Configuration/TCA/Overrides/pages_language_overlay.php
$GLOBALS['TCA']['pages_language_overlay']['columns']['documents']['l10n_mode'] = 'exclude';

使用 exclude mode 指示 TYPO3 跳过字段 documents 的覆盖在前端渲染过程中。覆盖过程发生在 PageRepositoryPage 时,Extbase 也会调用它。模型从存储中重建。

关于localization - FAL FileReferences 未在 FE 中本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33044132/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com