Bug #87093
closedTYPO3 9.5: CONTENT TypoScript object type does not select records with language set to -1
100%
Description
If you create tt_contents with language set to "All" aka 1 then those records are only shown in foreign languages. In the default language (sys_language_uid = 0) they are not shown.>getQueryConstraints the LanguageAspect's doOverlays() method is queried, and this only return true if sys_language_uid is greater 0.
It seems that in ContentObjectRenderer->getQueryConstraints
the constraint "AND (tt_content.sys_language_uid in (0,-1))
" is only added, if the same page is opened in other languages. In the default language it's always "AND (tt_content.sys_language_uid = 0)
". In TYPO3 8.5 the expected constraint is also added in the default language.
The problem is, that in ContentObjectRenderer
For me the solution is to change the else part on line 6936 (TYPO3 9.5.1) in ContentObjectRenderer.php from
$languageQuery = $expressionBuilder->eq($languageField, $languageAspect->getContentId());
to
$languageQuery = $expressionBuilder->in($languageField, [$languageAspect->getContentId(), -1]);
but I don't know if there are any unexpected side effects.
Side note: I also made some other tests and for me extbase records and even the RECORD TypoScript object works as expected. I think only CONTENT TypoScript object and code parts which depends on ContentObjectRenderer->getQueryConstraints
are affected.
Updated by Manfred Egger almost 6 years ago
- Subject changed from CONTENT TypoScript object type does not select records with language set to -1 to TYPO3 9.5: CONTENT TypoScript object type does not select records with language set to -1
Updated by Martin Weymayer almost 6 years ago
@Manfred Egger: did you find any unexpected side effects or is you fix working fine?
Updated by Manfred Egger over 5 years ago
@Martin Weymayer: I didn't test all possibilities, but for my installations the fix is working fine.
Updated by Manfred Egger over 5 years ago
- Has duplicate Bug #87749: content elements with language "all languages -1" not working in default language added
Updated by Gerrit Code Review over 5 years ago
- Status changed from New to Under Review
Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/59993
Updated by Gerrit Code Review over 5 years ago
Patch set 1 for branch 9.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/60192
Updated by Benni Mack over 5 years ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset 0dd23086dbea238963218ac6f089037a487149c7.
Updated by Benni Mack over 5 years ago
- Related to Bug #87950: No language fallback added