1

我正在使用 TYPO3 7.6 并使用 findAll() 和 findByUid() 方法呈现多语言记录。我在我的存储库中写了以下代码

/*
* Initialize Default Settings
*/
public function initializeObject() {
    $querySettings = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Persistence\\Generic\\Typo3QuerySettings');
    $querySettings->setRespectStoragePage(FALSE);
    $querySettings->setRespectSysLanguage(TRUE);
    $this->setDefaultQuerySettings($querySettings);
}

我的网站中有 2 种语言。和我的记录在前端正确呈现。我的问题如下。

uid     name    fcounter sys_language_id        l10n_parent
________________________________________________________
1       abc       2       0                      0
________________________________________________________
2       abc-en    0       1                      1

那么他们有什么方法可以使用 findByUid() 或任何其他存储库方法来增加两种语言的 fcounter 字段吗?

4

1 回答 1

0

最简单的方法是更新模型的 TCA 定义。重要的值是“l10n_display”。

defaultAsReadonly – 这会将字段呈现为具有默认语言记录内容的只读字段。即使“l10n_mode”设置为“排除”,该字段也将被呈现。当“排除”定义不翻译的字段时,此选项激活默认数据的显示。

TYPO3 文档

"fcounter" => array(
                    "exclude"      => 1,
                    "l10n_mode"    => "exclude",
                    "l10n_display" => "defaultAsReadonly",
                    .....
            ),
于 2016-01-02T21:26:27.267 回答