2
votes

Comment remplacer data = TSFE: sys_language_uid dans TYPO3 9 avec des aspects

Nous avons eu une configuration typoscript pour indiquer au CSS dans quelle langue nous sommes, en ajoutant une classe dans la balise body avec un nom de classe language-x .

Puisque rien ne semble être documenté sur la façon de faire cela dans Typoscript, je n'ai pas encore beaucoup essayé de résoudre ce problème.

Pour ce faire, nous avons utilisé ce typoscript:

Property $TSFE->sys_language_uid is not in use anymore as this information is now stored within the language aspect

Cela soulève maintenant un E_USER_DEPRECATED :

// Language
    30 = TEXT
    30 {
        data = TSFE:sys_language_uid
        noTrimWrap = | language-||
    }

Merci d'avance. Cordialement Thomi


0 commentaires

3 Réponses :


2
votes

En consultant la documentation:

https: // docs .typo3.org / typo3cms / CoreApiReference / ApiOverview / SiteHandling / UseSiteInTypoScript.html

https://docs.typo3.org/typo3cms/CoreApiReference/ApiOverview/SiteHandling/UseSiteInConditions.html#sitehandling-inconditions

Je pense que vous pouvez utiliser une condition comme:

html[lang="it"]{
/*css code here*/
}

Veuillez noter que TYPO3 9.5 met déjà la langue actuelle dans la balise , comme:

Vous pouvez donc utiliser un sélecteur d'attribut (très bien pris en charge) dans votre css:

[siteLanguage("typo3Language") == "it"]
  page.bodyTag = <body class="language-it">
[global]


0 commentaires

4
votes

Depuis TYPO3 9.5.3 , il est également possible d'accéder à la configuration actuelle de la langue du site avec TypoScript Setup:

page.10 = TEXT
page.10.dataWrap = The current site language direction is {siteLanguage:direction}

ou

page.10 = TEXT
page.10.data = siteLanguage:navigationTitle
page.10.wrap = This is the title of the current site language: |


0 commentaires

3
votes

@ josef-glatz comme vous l'avez suggéré, je pense que cela fonctionne aussi.

Dans le cas de Thomi, je suggère d'utiliser:

// Language
    30 = TEXT
    30 {
        data = sitelanguage:languageId
        noTrimWrap = | language-||
    }

REMARQUE IMPORTANTE: Ceci n'est disponible que depuis TYPO3 9.5.4 , puisque Georg Ringer n'a résolu le problème que le 28.12.2018.


0 commentaires