Funktionierendes Section Menu mit TemplaVoila

Submitting your vote...
Rating: 5.0 of 5. 2 vote(s).
Click the rating bar to rate this item.

Wenn man TemplaVoila benutzt funktioniert das Menu/Sitemap "Section index (pagecontent w/Index checked)" nicht ( gelöschte Elemente sind im Menu und die Sortierung ist falsch).

Section Menu Templavoila

Das ist weil das TemplaVoila rendering nicht das "sorting" und das "deleted" Feld benutzt, sondern eine Liste der UIDs für die sichtbaren Inhaltselemente in einem eigenen Feld der Tabelle pages speichert (tx_templavoila_flex).

Mit ein wenig TypoScript kann das "Section Menu" umgeschrieben werden.

Durch das Speichern der sichtbaren UIDs in einem register Wert (recordsInTVField) können wir eine TypoScript SQL abfrage erstellen die nur die sichtbaren Inhaltselmente auslest und diese auch richtig sortiert.

Der register Wert kann auch in anderen Scripts verwerndet werden wo man die UIDs der Inhaltselmente benutzen möchte.

Die Lösung

In der TemplaVoila Data Structure (DS) schauen alle Felder die Inhaltselmente (CE) enthalten so aus:

 

10 = RECORDS
10.source.current=1
10.tables = tt_content
10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->

 

Diesen Teil der DS muss man wie folgt ändern:

 

5 = LOAD_REGISTER
5.recordsInTVField.data = current:1
10 = RECORDS
10.source.data=register:recordsInTVField
10.tables = tt_content
10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
15 = RESTORE_REGISTER

 

Im TypoScript SETUP Feld folgendes eingeben:

 

tt_content.menu.20.3 >
tt_content.menu.20.3 = CONTENT
tt_content.menu.20.3 {
  wrap = <ul class="csc-menu csc-menu-3">|</ul>
  table = tt_content
  select.pidInList = this
  select.andWhere.dataWrap = uid IN ({register:recordsInTVField}) AND sectionIndex!=0
  renderObj = TEXT
  renderObj {
    fieldRequired = header
    trim=1
    field = header
    htmlSpecialChars = 1
    wrap = <li class="csc-section">|</li>
    typolink.parameter.field = pid
    typolink.section.field = uid
  }
}

 

Bemerkung: Das sollte für alle Spalten in der DS gemacht werden, sonst kann sein,dass man uid Werte von anderen Spalten bekommt.

 

Dieses Snippet wurde von Peter Klein eingesendet




Comments


johann, 20-07-09 20:39:
Hallo,

tolle Sache, leider funktioniert die Sortierung nicht er macht das einfach nach den ce uid aufsteigend.

viele Grüße
Johann
johann, 20-07-09 20:49:
hier steht eine funktionierende Lösung.

http://typo3.toaster-schwerin.de/typo3_english/2005_05/msg01741.html
Gruss Johann

Add comment

* - required field

*



*
*

Top 10 Updates

Login geändert am  14-Aug-2010 13:50:17
Schöne Schriften mit Google Font API geändert am  20-May-2010 16:36:59
TS basierte Searchbox für Indexed Search geändert am  18-May-2010 18:26:54
TYPO3 SEO geändert am  30-Apr-2010 09:43:20
Suchmaschinenfreundliche grafische Überschriften in TYPO3 geändert am  30-Apr-2010 09:33:56
Erstellen eines einfachen Infocenters mit TYPO3  geändert am  17-Nov-2009 12:11:22
Funktionierendes Section Menu mit TemplaVoila geändert am  05-May-2009 12:42:40
"Nicht im Menü" in Sitemap anzeigen geändert am  05-May-2009 12:12:24
Implementation des DHTML Menüs von brainjar.com  geändert am  01-Feb-2009 14:01:36
Beispiel DHTML Menü geändert am  01-Feb-2009 13:47:38

Latest comments

01-Sep-2010 20:38:32
Ben Heuwing schrieb: Damit die aktuelle Seite nicht verlinkt wird, wie bei normalen Menüs den MENUITEMSTATE CUR...
Klickpfad / Rootline Menu / Breadcrumb Menu
31-Aug-2010 17:16:13
Peter schrieb: Hallo Zusammen, ich hätte eine Frage: Ich würde gerne den Seitentitel der ersten Ebene oberhalb...
Seitentitel von übergeordneter Seite ausgeben
26-Aug-2010 21:32:42
Mo schrieb: Aktuell:...
Mehrere Domains in einer Typo3 Installation verwalten
English
Suche: