这是“我的”旧语言开关,也解释了tx_news,如果页面或新闻项目没有翻译,它就不会链接语言(这是USERDEF的功能):
temp.lang_nav = HMENU
temp.lang_nav {
special = language
special.value = 0,1
special.normalWhenNoLanguage = 0
wrap = |
1 = TMENU
1 {
NO = 1
NO {
linkWrap = <li>|</li>
stdWrap.override = DE || EN
# Build Typolink ourself
doNotLinkIt = 1
stdWrap.typolink.parameter.data = page:uid
stdWrap.typolink.additionalParams = &L=0 || &L=1
stdWrap.typolink.addQueryString = 1
stdWrap.typolink.addQueryString.exclude = L,id,cHash,no_cache
stdWrap.typolink.addQueryString.method = GET
stdWrap.typolink.useCacheHash = 1
stdWrap.typolink.no_cache = 0
}
// Active language
ACT = 1
ACT < .NO
ACT {
stdWrap.typolink.ATagParams = class="active"
}
// = NO + No translation
USERDEF1 = 1
USERDEF1 < .NO
USERDEF1{
//doNotShowLink = 1
stdWrap.typolink >
}
// = ACT + No translation
USERDEF2 = 1
USERDEF2 < .USERDEF1
}
}另外,我使用了一个根据https://gist.github.com/michelalbers/fb0c2e04af1d6ff94788的变体,它具有更现代的语法。
一位用户报告说,突然之间,USERDEF状态不再对未翻译的新闻起作用。
实际上,我不能证明这对未翻译的新闻有效,但我很确定。
你认为是什么?一个bug?语法错误?USERDEF不是用来看新闻的,只是用来浏览网页的?或者,这可能根本就不起作用?
如果是最后一种情况,有没有办法达到这样的效果(不要链接到未翻译的新闻的翻译)?
发布于 2016-10-29 00:59:13
很明显,我要求的不是一个特征。
当用户在未翻译的项目上使用lang开关时,防止用户登录到全局404页面的一个解决方法是为新闻创建一个单独的404页面,并提供更清晰的解释。
如果您设置了如下内容
'pageNotFound_handling' => 'USER_FUNCTION:typo3conf/ext/template/Classes/Various/noAccess.php:noAccess->pageNotFound',在localconf中,您可以在那里完成这项工作。
https://stackoverflow.com/questions/40270726
复制相似问题