Diese Webseite verwendet Cookies. Diese werden u.a. zu statistischen Zwecken verwendet. mehr Informationenschließen
 

TYPO3 Bootstrap Package: Sprachmenü überschreiben

Das TYPO3 Bootstrap Package bringt viele nützliche Elemente mit sich. Einzig die Platzierung der Sprachauswahl ist erfahrungsgemäß für viele Projekte ungeeignet. An besagter Stelle im Footer könnte nämlich auch auch die klassische Metanavigation mit Impressum, Datenschutz und Kontakt stehen.

Doch es wäre ja keine vernünftige TYPO3-Erweiterung, wenn sich das nicht überschreiben lassen würde. Ab Version 7.0.0 hat sich das Bootstrap Package deutlich geändert und löst Menüs und andere Elemente weniger mit TypoScript und setzt stattdessen mehr auf Fluid. Daher im folgenden Lösungen für 6.x und 7.x.

Sprachmenü ersetzen in Boostrap Package 6.x

In der "alten" Boostrap Package Version - die wohlgemerkt auch unter TYPO3 7.6 ohne Probleme läuft - ist die gewünschte Änderung reichlich einfach mit wenigen Zeilen TypoScript möglich:

lib.language = HMENU
lib.language {
     wrap = <div id="metanavigation">|</div>  
     special = directory
     special.value = 123 #Startpunkt Menü
     1 = TMENU
     1 {
       NO = 1
       NO {
           linkWrap = <span>|</span>
         }      
       CUR = 1
       CUR {
           linkWrap = <span class="current">|</span>
             }
        }
     }

Entscheidend ist die Ansprache von lib.language. Wie das Menü im Detail aussieht, lässt sich wie gewohnt konfigurieren. Statt einem Menü wären natürlich auch andere Elemente denkbar.

Überschreiben des Sprachmenüs im Bootstrap Package 7.x

Wie oben erwähnt, hat sich ab Version 7.0.0 bei Bookstrap Package einiges geändert. Entsprechend gestaltet sich das Überschreiben des Sprachmenüs auch etwas anders oder - subjektiver Eindruck - komplizierter.

1.) Änderungen TypoScript:

page.10 {
        dataProcessing {
            40 = BK2K\BootstrapPackage\DataProcessing\MenuProcessor
            40 {
               special = directory
               special.value = 16
               as = menu  # vgl. Bezeichnung in der Template-Datei
          }

2.) Eigene Language.html referenzieren:

Diese Anpassung - also den Speicherort für die Partials (z.B. fileadmin/meinprojekt/tpl/Partials/Page/) -  kann bequem über den Konstanteneditor erledigt werden. Im referenzierten Verzeichnis wird nur der Ordner Navigation und dort die Datai Language.html benötigt.

3.) Language.html anpassen (Beispiel):

{namespace bk2k = BK2K\BootstrapPackage\ViewHelpers}
<f:if condition="{menu}">
     <nav class="metanavigation" role="navigation">
          <f:for each="{menu}" as="menuItem">
                <span class="metanavigationitem">
                      <f:link.page pageUid="{menuItem.data.uid}" title="menuItem.title}">
                           {menuItem.title}
                      </f:link.page>
                 </span>
           </f:for>
     </nav>
</f:if>

So könnte die Metanavigation aussehen. Wichtig ist, dass sich der der Menüname (hier: menu) mit dem im Setup gesetzten (vgl. Punkt 1) deckt.

Kommentare (0)

No comments found!

Neuen Kommentar schreiben