Navigation zu Ankern/ Contentelementen auf einer Seite

284 Kommentare | Rubrik: Module

 

Wer lange Contentseiten hat, sollte seinen Besuchern die Möglichkeit bieten, schnell direkt auf relevante Inhaltspunkte einzuspringen. Am einfachsten löst man dies mit einer Navigation über die Anker auf der Website. Folgender Artikel stellt ein anpassbares TS-Menü zur Verfügung.

Navigationsmenü

Navigationsmenü zu Ankern

Typo3 bietet von Haus aus die Möglichkeit Navigationsmenüs basierend auf Anker der jeweiligen Seiten zu realisieren. Mit folgendem leicht anzupassendem TS generiert man eine Navigation über Anker auf der jeweiligen Seiten und hat die Möglichkeit nur Anker bestimmter Inhaltselemente in die Navigation mit aufzunehmen.

### Bibliothek für Contentnavigation über Anker ###
lib.contentnavigation = CONTENT
lib.contentnavigation {
  table = tt_content
  select {
    pidInList = this
    orderBy = sorting
    # SQL-Abfrage auf die DB:
    # Nicht versteckt + nicht gelöscht + col 0 (Spalte Normal) + kein Typ 'header'
    where = (NOT hidden) AND (NOT deleted) AND (colPos=0) AND NOT (CType='header')
    # fuer Sprachen
    languageField=sys_language_uid
  }
  renderObj = TEXT
  renderObj {
    # header Feld als Text nutzen
    field = header
    # wrap um den Link
    wrap=|
# generiert den Link zur aktuellen Seite
    typolink.parameter.field=pid
# haengt die Nummer des Ankers an
    typolink.parameter.dataWrap=|#{field:uid}
    # nur wenn Überschrift vorhanden ist
    if.isTrue.field=header
  }
# wrap um das komplette Menü
  wrap = <div class="jump">|</div>
}

Ein Beispiel gibt es in der rechten Spalte auf der Inhaltsverzeichnis-Seite

Wichtig

Die Anker auf der Seite dürfen natürlich nicht deaktiviert sein, sonst wird zwar die Navigation mit den Links generiert, aber der Einsprung zum Inhaltselement funktioniert nicht.

Das Menü generiert die Linktexte aus den Überschriftsfeldern, d.h. diese müssen vorhanden sein. Falls man diese nicht auf der Website angezeigt bekommen möchten, kann man den Typ auf "versteckt" setzen.

Anpassen

TabellenstrukturWer die Abfrage anpassen möchte, für den empfiehlt sich die phpMyAdmin Extension. Mit ihr können die Struktur und Werte der abgefragten Tabellen in der Datenbank schnell zur Anpassung angezeigt werden.

3 Kommentare

Seite 1 von 1 1

#3 Alex answer
schrieb am 20.06.2011 18:25

Das Beispiel funktioniert toll! Habe aber noch ein Problem.

Ich habe bei mir 4-5 Sectionen mit Anker und über jeder Section soll die Navigation kommen. Das funktioniert auch. Nur leider fehlt a) immer der Link für die aktuelle Sektion und b) fehlt der Link von allen vorherigen Sectionen.

Bsp.:

Section 1 von 5 hat die Links: <Section2><Section3><Section4><Section5>

...

Section 3 von 5 hat die Links: <Section4><Section5>

 

Ich hätte aber gerne über all, alle Sectionen und die jeweilige markiert:

Bsp. für Section2: <Section1><Section2 aktiv><Section3><Section4><Section5>

 

Ich bin leider noch nicht fit in TS. Wäre toll wenn mir jemand helfen könnte!

 

Besten Dank!

#2 Marco answer
schrieb am 18.05.2011 15:53

Funktioniert prächtig. Danke!

#1 Norbert Kress answer
schrieb am 04.10.2008 22:04

wenn ich irgendeinem Link folgen will, lande ich immer auf dieser Kommentar-Seite???

Einen Kommentar schreiben

Email wird nicht veröffentlicht.


Aktuelles aus Typo3

Bookmark setzen

bookmark in your browserbookmark at mister wongpublish in twitterbookmark at del.icio.usbookmark at digg.combookmark at furl.netbookmark at linksilo.debookmark at reddit.combookmark at spurl.netbookmark at technorati.combookmark at google.combookmark at yahoo.combookmark at facebook.combookmark at stumbleupon.combookmark at propeller.combookmark at newsvine.combookmark at jumptags.com