Menü umbauen für Mehrsprachigkeit

  • heck heck
    Padawan
    0 x
    55 Beiträge
    0 Hilfreiche Beiträge
    16. 06. 2012, 16:05

    Hallo zusammen,

    ich habe eine existierende Typo3 Webseite in Pflege genommen. Der Inhaber möchte jetzt auf Mehrsprachigkeit umbauen. Leider ist die Seite nicht wirklich darauf vorbereitet, aktuell hänge ich etwas an der notwendigen Änderung im Bereich der Menüs. Hier mal die Definition:

    1. lib.subnavi = COA
    2. lib.subnavi{
    3.  
    4. 5 = TEXT
    5. 5.value=<a href="index.php?id=17"><img src="fileadmin/templates/img/teaser-home-oele-fette.jpg" /></a>
    6. 6 = TEXT
    7. 6.value=<a href="index.php?id=17" class="oeleundfette">Öle und Fette</a>
    8.  
    9. 10 = HMENU
    10. 10 {
    11. special = directory
    12. special.value = 17
    13. entryLevel=3
    14. 1 = TMENU
    15. 1 {
    16. #expAll = 1
    17.  
    18. wrap = <ul id="nav">|</ul>
    19.  
    20.  
    21. noBlur = 1
    22. NO = 1
    23. NO{
    24.  
    25. wrapItemAndSub = <li>|</li>
    26. #ATagParams= class="{field:tx_flseositemap_field}" ><span class="{field:tx_flseositemap_field}"><img src="fileadmin/templates/img/navigation/{field:tx_flseositemap_field}.gif" alt="" /> </span
    27. #allStdWrap = page:title
    28. #allStdWrap.insertData = 1
    29.  
    30.  
    31. }
    32. ACT = 1
    33. ACT{
    34. ATagParams = class="active"
    35. wrapItemAndSub = <li>|</li>
    36. #ATagParams= class="{field:tx_flseositemap_field} active" ><span class="{field:tx_flseositemap_field}"><img src="fileadmin/templates/img/navigation/{field:tx_flseositemap_field}.gif" alt="" /> </span
    37. #allStdWrap.insertData = 1
    38. }
    39.  
    40.  
    41. }
    42. }

    Wie zu sehen ist, wird der Titel des Links hier fest definiert (6.value=<a href="index.php?id=17" class="oeleundfette">Öle und Fette</a> und nicht aus dem Menübaum geholt, so dass hier die Mehrsprachigkeit nicht greift. Ich müsste diese Zeile also entweder abhängig von der gewählten Sprache im Template jeweils anders definieren, oder - was mir eigentlich lieber wäre - den Namen aus der Seitendefinition holen. Nur stehe ich aktuell auf dem Schlauch, wie ich das in Typoscript realiseren soll. Ich habe zwar schon an verschiedenen Stellen gesucht, bin aber noch nicht fündig geworden. Falls mir jemand einen Stups in die richtige Richtung geben könnte, wäre ich sehr dankbar!


  • 1
  • igorshmigor igorshmig...
    Jedi-Ratsmitglied
    0 x
    941 Beiträge
    0 Hilfreiche Beiträge
    16. 06. 2012, 16:45

    Versuchs mal so:

    1. 5 = TEXT
    2. 5.value=<img src="fileadmin/templates/img/teaser-home-oele-fette.jpg" />
    3. 5.typolink.parameter=17
    4. 6 = TEXT
    5. 6.data=DB<i class="mmforum-iconset-20-razz"></i>ages:17:title
    6. 6.typolink.parameter=17

  • heck heck
    Padawan
    0 x
    55 Beiträge
    0 Hilfreiche Beiträge
    16. 06. 2012, 20:06

    @igorshmigor: So geht es! Ich habe da zu kompliziert gedacht, die Lösung habe ich sogar schon woanders eingesetzt, nur nicht mehr im Hinterkopf. Fehlt dann nur noch die Definition der Klasse mittel

    1. 6.typolink.ATagParams=class="oeleundfette"

    und schon sieht es auch aus wie früher!

    Problem gelöst - vielen Dank an Dich!

  • heck heck
    Padawan
    0 x
    55 Beiträge
    0 Hilfreiche Beiträge
    25. 06. 2012, 21:14

    Jetzt muss ich doch noch mal auf das Thema zurückkommen:

    Wenn ich jetzt die alternativen Seitensprache für die Seiten angelegt habe, so fragt diese Variante natürlich nur den Seitentitel der Standardsprache ab - daher wird die Übersetzung nicht angezeigt.

    Mit [globalVar = GP:L=1] zu arbeiten wäre prinzipiell möglich, funktioniert aber ja nicht innerhalb geschweifter Klammern - das ganze dann umzubauen wäre eine Menge Schreibarbeit.
    Gibt es denn eine alternative Methode, den Titel der Seite abhängig von der UID der Sprache abzufragen?

  • heck heck
    Padawan
    0 x
    55 Beiträge
    0 Hilfreiche Beiträge
    26. 06. 2012, 13:16

    Lösung selbst gefunden - ein weiteres HMENU bringt die Lösung:

    1. lib.subnavi = COA
    2. lib.subnavi{
    3.  
    4.  
    5. 5 = TEXT
    6. 5.value=<img src="fileadmin/templates/img/teaser-home-oele-fette.jpg" />
    7. 5.typolink.parameter=17
    8.  
    9. 7 = HMENU
    10. 7 {
    11. special = list
    12. special.value = 17
    13. 1 = TMENU
    14. 1 {
    15. NO {
    16. doNotLinkIt = 0
    17. ATagParams=class="oeleundfette"
    18. wrapItemAndSub = <div id="titleLevel1">|</div>
    19. }
    20. ATagParams=class="oeleundfette"
    21. wrapItemAndSub = <div id="titleLevel1">|</div>
    22. }
    23. }
    24.  
    25.  
    26. 10 = HMENU
    27. 10 {
    28. special = directory
    29. special.value = 17
    30. entryLevel=3
    31. 1 = TMENU
    32. 1 {
    33. #expAll = 1
    34.  
    35. wrap = <ul id="nav">|</ul>
    36.  
    37.  
    38. noBlur = 1
    39. NO = 1
    40. NO{
    41.  
    42. wrapItemAndSub = <li>|</li>
    43. #ATagParams= class="{field:tx_flseositemap_field}" ><span class="{field:tx_flseositemap_field}"><img src="fileadmin/templates/img/navigation/{field:tx_flseositemap_field}.gif" alt="" />&nbsp;</span
    44. #allStdWrap = page:title
    45. #allStdWrap.insertData = 1
    46.  
    47.  
    48. }
    49. ACT = 1
    50. ACT{
    51. ATagParams = class="active"
    52. wrapItemAndSub = <li>|</li>
    53. #ATagParams= class="{field:tx_flseositemap_field} active" ><span class="{field:tx_flseositemap_field}"><img src="fileadmin/templates/img/navigation/{field:tx_flseositemap_field}.gif" alt="" />&nbsp;</span
    54. #allStdWrap.insertData = 1
    55. }
    56.  
    57.  
    58. }
    59. }

  • 1