VF DSL 468x60

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 18: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 18: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

Erstellen eines einfachen Infocenters mit TYPO3  geändert am  17-Nov-2009 11:11:22
Funktionierendes Section Menu mit TemplaVoila geändert am  05-May-2009 10:42:40
"Nicht im Menü" in Sitemap anzeigen geändert am  05-May-2009 10:12:24
Implementation des DHTML Menüs von brainjar.com  geändert am  01-Feb-2009 13:01:36
Beispiel DHTML Menü geändert am  01-Feb-2009 12:47:38
Anzeigebeispiel für dynamische Bild Masken geändert am  16-Dec-2008 15:11:25
Links geändert am  11-Dec-2008 10:12:33
Nützliche Links geändert am  11-Dec-2008 10:05:56
Transparente PNG's in IE5/6 ohne JavaScript geändert am  04-Oct-2008 12:28:14
Typoscript Eigenschaften mit stdWrap erweitern geändert am  13-Jun-2008 14:16:12

Latest comments

13-Mar-2010 10:07:30
Tom schrieb: Sorry, natürlich mit align = center :-) Tom
Vertikales grafisches Menu (GMENU)
11-Mar-2010 07:52:35
Tom schrieb: Klasse, genau das was ich gebraucht habe. Mit einer Einschränkung... ... wie kann ich jetzt den...
Vertikales grafisches Menu (GMENU)
10-Mar-2010 15:42:51
siteway.de schrieb: Perfekt. Nach genau sowas hab ich gesucht! Danke.
Jedem Mailformular Feld eine eigene CSS Klassen zuweißen
English
Suche: