带有tx_news的TYPO3语言菜单 - 如果没有翻译新闻记录,则从菜单中隐藏语言

时间:2017-04-06 15:43:53

标签: typo3 typoscript tx-news

如果没有翻译新闻记录,我想隐藏语言菜单中的语言。

以下设置适用于页面。因此,如果页面没有翻译,那么"英语"没有显示在网站的语言菜单中。

我也想对未翻译的新闻记录采取此行为。

到目前为止的语言菜单:

lib.language = COA
lib.language {
    20 = HMENU
    20 {
        special = language
        special.value = 0,1
        special.normalWhenNoLanguage = 0
        wrap =
        1 = TMENU
        1 {
            noBlur = 1
            NO = 1
            NO {
                linkWrap = <li>|</li>
                stdWrap.override = Deutsch || English
                stdWrap {
                    typolink {
                        parameter.data = page:uid
                        additionalParams = &L=0 || &L=1 
                        ATagParams = hreflang="de-DE" || hreflang="en-GB"
                        addQueryString = 1
                        addQueryString.exclude = L,id,cHash,no_cache
                        addQueryString.method = GET
                        useCacheHash = 1
                        no_cache = 0
                    }
                }
            }

            ACT < .NO
            ACT.linkWrap = <li class="active">|</li>
            USERDEF1 = 1
            USERDEF1 {
                ldoNotLinkIt = 1
                stdWrap.cObject = TEXT
                stdWrap.cObject.value = 
            }

            USERDEF2 = 1
            USERDEF2 {
                doNotLinkIt = 1
                stdWrap.cObject = TEXT
                stdWrap.cObject.value = 
            }
        }
    }

    wrap = <ul id="language_menu" class="language-menu">|</ul>
}

我的typoscript配置:

  config.sys_language_mode = strict
  config.sys_language_overlay = hideNonTranslated

LocalConfiguration.php

[FE][hidePagesIfNotTranslatedByDefault] = 1

1 个答案:

答案 0 :(得分:0)

您必须手动设置USERDEF1状态。此实用程序类应该有所帮助:https://gist.github.com/birger-fuehne/a8a97c94ec9346d691174462ccbfcfcc