TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

Menü umbauen für Mehrsprachigkeit


Autor Nachricht
Verfasst am: 16. 06. 2012 [16:05]
heck
Themenersteller
Dabei seit: 03.01.2003
Beiträge: 55
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:

TYPOSCRIPT
lib.subnavi = COA
lib.subnavi{
 
5 = TEXT
5.value=<a href="index.php?id=17"><img src="fileadmin/templates/img/teaser-home-oele-fette.jpg" /></a>
6 = TEXT
6.value=<a href="index.php?id=17" class="oeleundfette">Öle und Fette</a>
 
10 = HMENU
10 {
  special = directory
  special.value = 17
  entryLevel=3
  1 = TMENU
  1 {
    #expAll = 1
 
    wrap = <ul id="nav">|</ul>
 
 
    noBlur = 1
    NO = 1
    NO{
 
      wrapItemAndSub = <li>|</li>
      #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        
      #allStdWrap = page:title
      #allStdWrap.insertData = 1
 
 
    }
    ACT = 1
    ACT{
      ATagParams = class="active" 
      wrapItemAndSub = <li>|</li>                    
      #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  
      #allStdWrap.insertData = 1
    }
 
 
  }
}


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>icon_wink.gif 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!





Ciao
Peter
ProfilWWW
Verfasst am: 16. 06. 2012 [16:45]
igorshmigor
Dabei seit: 17.03.2006
Beiträge: 942
Versuchs mal so:
TYPOSCRIPT
5 = TEXT
5.value=<img src="fileadmin/templates/img/teaser-home-oele-fette.jpg" />
5.typolink.parameter=17
6 = TEXT
6.data=DB:pages:17:title
6.typolink.parameter=17


ProfilWWW
Verfasst am: 16. 06. 2012 [20:06]
heck
Themenersteller
Dabei seit: 03.01.2003
Beiträge: 55
@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

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


und schon sieht es auch aus wie früher!

Problem gelöst - vielen Dank an Dich!


Ciao
Peter
ProfilWWW
Verfasst am: 25. 06. 2012 [21:14]
heck
Themenersteller
Dabei seit: 03.01.2003
Beiträge: 55
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?



Ciao
Peter
ProfilWWW
Verfasst am: 26. 06. 2012 [13:16]
heck
Themenersteller
Dabei seit: 03.01.2003
Beiträge: 55
Lösung selbst gefunden - ein weiteres HMENU bringt die Lösung:

TYPOSCRIPT
lib.subnavi = COA
lib.subnavi{
 
 
5 = TEXT
5.value=<img src="fileadmin/templates/img/teaser-home-oele-fette.jpg" />
5.typolink.parameter=17
 
7 = HMENU
7 {
  special = list
  special.value = 17
  1 = TMENU
  1 {
    NO {
      doNotLinkIt = 0
      ATagParams=class="oeleundfette" 
    wrapItemAndSub = <div id="titleLevel1">|</div>
    }
    ATagParams=class="oeleundfette" 
    wrapItemAndSub = <div id="titleLevel1">|</div>
  }
}  
 
 
10 = HMENU
10 {
  special = directory
  special.value = 17
  entryLevel=3
  1 = TMENU
  1 {
    #expAll = 1
 
    wrap = <ul id="nav">|</ul>
 
 
    noBlur = 1
    NO = 1
    NO{
 
      wrapItemAndSub = <li>|</li>
      #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        
      #allStdWrap = page:title
      #allStdWrap.insertData = 1
 
 
    }
    ACT = 1
    ACT{
      ATagParams = class="active" 
      wrapItemAndSub = <li>|</li>                    
      #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  
      #allStdWrap.insertData = 1
    }
 
 
  }
}


Ciao
Peter
ProfilWWW