2016-10-26 4 views
0

이것은 tx_news도 고려하고 페이지 또는 뉴스 항목에 대한 번역이없는 경우 언어를 연결하지 않는 "내"나이 언어 스위치입니다.) USERDEF의 : 또한TypoScript 메뉴 : tx_news에 대해 USERDEF1 및 USERDEF2 상태가 작동하지 않습니다.

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 상태가 번역되지 않은 뉴스에 더 이상 나타나지 않는다고보고했습니다.

사실, 이것이 내가 번역되지 않은 뉴스에 대해 효과가 있었음을 증명할 수는 없지만, 나는 확신합니다.

당신은 어떻게 생각하십니까; 벌레? 잘못된 구문입니까? USERDEF 뉴스가 아닌 페이지 만 표시 하시겠습니까? 아니면 전혀 작동하지 않았을 수 있습니까?

마지막으로 그런 효과를 얻는 방법이 있습니까 (번역되지 않은 뉴스의 번역에 연결하지 마십시오)?

+0

tx_news 번역본이없는 경우에 효과가 있다는 것이 놀랍습니다. – pgampe

+0

흠 .. 어쩌면 그랬 겠지! – Urs

답변

0

분명히 내가 원하는 것은 기능이 아닙니다.

번역되지 않은 항목에 lang 스위치를 사용할 때 사용자가 글로벌 404 페이지에 방문하지 못하도록하는 방법은 명확한 설명이있는 뉴스에 대해 별도의 404 페이지를 만드는 것입니다. 당신이 localconf에서

'pageNotFound_handling' => 'USER_FUNCTION:typo3conf/ext/template/Classes/Various/noAccess.php:noAccess->pageNotFound', 

같은 것을 설정 한 경우

, 당신이 그 일을 할 수 있습니다.