TYPO3 v8.7. - Переключатель языка не работает должным образом для подробных записей собственного расширения - PullRequest
0 голосов
/ 29 октября 2018

Как может случиться, что во время смены языка возникает явление, при котором для каждой другой выбранной записи ... используется переведенная запись первой выбранной записи?

Так что в конкретных терминах ... У меня есть большее количество записей в моем собственном расширении. Если я нажимаю на запись, начиная с представления списка, чтобы перейти на страницу сведений ... Я получаю запись, отображаемую правильно:

domain/abc/abc/?tx_abc_abc%5Brecord%5D=950007&tx_abc_abc%5Baction%5D=show&tx_abc_abc%5Bcontroller%5D=abc

Если я переключу язык, я также получу правильный выбор языка для этой записи:

domain/de/abc/abc/?tx_abc_abc%5Brecord%5D=950007&tx_abc_abc%5Baction%5D=show&tx_abc_abc%5Bcontroller%5D=abc

Но когда я выберу другую запись после этого:

domain/abc/abc/?tx_abc_abc%5Brecord%5D=950019&tx_abc_abc%5Baction%5D=show&tx_abc_abc%5Bcontroller%5D=abc

Я переключаю язык на самую первую выбранную мной запись:

domain/de/abc/abc/?tx_abc_abc%5Brecord%5D=950007&tx_abc_abc%5Baction%5D=show&tx_abc_abc%5Bcontroller%5D=abc

... и так далее:

domain/abc/abc/?tx_abc_abc%5Brecord%5D=950023&tx_abc_abc%5Baction%5D=show&tx_abc_abc%5Bcontroller%5D=abc
domain/de/abc/abc/?tx_abc_abc%5Brecord%5D=950007&tx_abc_abc%5Baction%5D=show&tx_abc_abc%5Bcontroller%5D=abc

Если я удаляю кеш FE в BE ... первый выбор снова работает ... но затем возникает то же явление, что и в следующем.

Я отключил RealUrl. Это v8.7.19. Я также деактивировал cHash для этого расширения, и оно должно оставаться деактивированным. У кого-то есть идея, что искать? Большое спасибо. Я использую этот Typoscript для создания переключения языка:

lib.languageMenu = COA
lib.languageMenu {
    wrap = <ul class="nav navbar-nav navbar-right languageMenu">|</li></ul></ul>
    20 = TEXT
    20.value = <img src="/fileadmin/templates/icons/icon_globe.png">
    20.wrap = <li class="dropdown"><a data-toggle="dropdown" class="dropdown-toggle" href="#">&nbsp;|&nbsp;<b class="caret"></b></a><ul class="dropdown-menu dropdown-menu-language">
    30 = HMENU
    30 {
        special = language
        special.value = 0,1
        special.normalWhenNoLanguage = 0
        addQueryString = 1
        addQueryString.exclude = L,id,cHash,no_cache
        addQueryString.method = GET
        useCacheHash = 1
        no_cache = 0        
        1 = TMENU
        1 {
            noBlur = 1
            NO = 1
            NO {
                wrap = <ul>|</ul>
                linkWrap = <li>|</li>
                stdWrap.cObject = TEXT
                stdWrap.cObject.value = <img src="fileadmin/templates/icons/flags/us.png">&nbsp;&nbsp;&nbsp;English || <img src="fileadmin/templates/icons/flags/de.png">&nbsp;&nbsp;&nbsp;Deutsch              
            }
            #CUR < .NO
            #CUR.doNotShowLink = 1
            ACT < .NO
            ACT.linkWrap = <li class="active">|</li>
            ACT.doNotShowLink = 1
            USERDEF1 < .NO
            USERDEF2 < .ACT
        }
    }
}

1 Ответ

0 голосов
/ 29 октября 2018

Я полагаю, проблема с кешированием. Я полагаю, ваш плагин не генерирует правильный cHash для переведенных страниц, поэтому кэшируется только версия страницы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...