0
「languageField」僅適用於tt_content或pages表嗎?TYPO3 TypoScript CONTENT with languageField
我想使用的內容對象的自己的分機表:
renderObj = CONTENT
renderObj {
table = tx_myext_domain_model_table
select {
pidInList = 28
languageField = sys_language_uid
}
renderObj = COA
renderObj {
10 = TEXT
10.field = description_short
}
}
但翻譯不工作。我從tt_content中獲取了TCA和SQL設置。此外定義的SQL-鍵:
PRIMARY KEY (uid),
KEY t3ver_oid (t3ver_oid,t3ver_wsid),
KEY parent (pid,sorting),
KEY language (l18n_parent,sys_language_uid)
可這是喜歡這裏描述http://forge.typo3.org/issues/22406一個錯誤?
編輯
在文件typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php
線7578(TYPO3 6.1.7),你會發現這些行:
if ($GLOBALS['TSFE']->sys_language_contentOL && $GLOBALS['TCA'][$table] && $GLOBALS['TCA'][$table]['ctrl']['languageField'] && $GLOBALS['TCA'][$table]['ctrl']['transOrigPointerField']) {
// Sys language content is set to zero/-1 - and it is expected that whatever routine processes the output will
// OVERLAY the records with localized versions!
$sys_language_content = '0,-1';
} else {
$sys_language_content = intval($GLOBALS['TSFE']->sys_language_content);
}
$query .= ' AND ' . $conf['languageField'] . ' IN (' . $sys_language_content . ')';
而且$GLOBALS['TSFE']->sys_language_contentOL
將1
。所以不會有翻譯。
這是配置:
config {
sys_language_uid = 1
sys_language_mode = content_fallback; 0
sys_language_overlay = 1
}
有了這個配置我期待有一個翻譯......
看起來很像所描述的問題。在安裝工具中啓用sqlDebug,查找查詢並使用phpMyAdmin(或通過閱讀)進行檢查。考慮在Forge問題中使用解決方法。 (MySQL中的KEY字段在這裏沒有關係,順便說一句。) – lorenz
用更多的輸出更新了我的問題。 – user2513437