Vollständiges Kategorie-Menü
| Autor | Nachricht |
|---|---|
|
Verfasst am: 29. 07. 2011 [11:57]
|
|
|
ra.s
Themenersteller
Dabei seit: 06.04.2006
Beiträge: 90
|
Hallo zusammen, ich verwende commerce das erste Mal in einem Projekt und habe mir nach den bekannten Anleitungen ein Kategorie-Menu im TS erstellt - funktioniert auch einwandfrei. Nur leider bekomme ich es nicht dazu in der 2. Ebene die Unterkategorien auszugeben. Ich bekomme immer nur eine Menu-Ebene ausgegeben. Ist es überhaupt möglich ein Kategorie-Menü zu erstellen, welches alle Unterkategorien ausgibt - quasi einer Sitemap gleich? Grüße, Ralf |
|
Verfasst am: 29. 07. 2011 [13:14]
|
|
|
king.darki
Dabei seit: 10.05.2011
Beiträge: 215
|
Hallo Ralf, ich hab auf meiner Website ein TS veröffentlicht, mit dem man ein CATMENU für tt_news selbst zusammenbauen kann. Das könntest du auch für commerce verwenden, musst nur die Bezeichnungen der fields ändern: http://fiedomedia.de/de/news/artikel/typo3-flexibles-catmenu-fuer-tt-news-mit-typoscript-erstellen/ Grüße Patrick |
|
Verfasst am: 29. 07. 2011 [16:55]
|
|
|
ra.s
Themenersteller
Dabei seit: 06.04.2006
Beiträge: 90
|
Hi Patrick, viele Dank für das Script. Habe es für Commerce angepasst und alles läuft wunderbar. +g+ Lediglich die Anzeige der Anzahl zugeordneten Produkte habe ich rausgenommen. Da diese nicht die Anzahl aller untergeordneten Produkte anzeigen kann, ist sie für mich nicht wirklich nützlich. Nochmal Danke, Ralf Hier die Commerce-Version eines CATMENUS, basierend auf Patricks Script aus dem vorangegangenem Post: TYPOSCRIPT lib.catList = COA lib.catList { # hole alle Hauptkategorien 10 = CONTENT 10 { # wrappe die gesamte Liste als "unsortierte Liste" wrap = <ul>|</ul> table = tx_commerce_categories select { # hier muss die PID eures 'Products'-Ordners (unter dem werden im Regelfall die Kategorien angelegt) rein # oder die PID des Ordners in dem ihr die Kategorien angelegt habt pidInList = 5 orderBy = sorting # Da es in commerce noch andere (System) Kategorie-Typen gibt, solltet ihr eure Kategorien einer "Master"-Kategorie unterstellen. # Die UID dieser Kategorie dann hier als Wert von 'parent_category' eintragen where = parent_category = 48 AND deleted = 0 AND hidden = 0 } renderObj = COA renderObj { # wrappe jede gefundene Hauptkategorie als Listenelement wrap = <li>|</li> # ueberschreibe den vorherigen Wrap ... wrap.override = <li class="current">|</li> # ... nur, wenn ... wrap.override.if { # ... eine News-Kategorie bereits ausgewaehlt wurde und per GET/POST ermittelt werden kann value.data = GPvar:tx_commerce_pi1|catUid # und dieser ermittelte Wert der aktuellen uid gleicht equals.field = uid } # zeig mir den Kategorie-Titel und mache einen Link daraus zur Kategorie-Detail-Uebersicht 10 = TEXT 10 { # das title-Feld soll als Text angezeigt werden (koennte man auch description... verwenden) field = title typolink { # verlinke zu der Seite mit der Produkt-Auflistung (Listenansicht) parameter = 13 title.field = title # fuege den GET-Parameter fuer die ausgewaehlte Kategorie hinzu additionalParams.dataWrap = &tx_commerce_pi1[catUid]={field:uid} } } # zeige mir alle Unterkategorien der aktuellen Kategorie an 20 = CONTENT 20 { stdWrap { # fuehre den Abschnitt nur aus, wenn in der Select-Abfrage ein Wert gefunden wurde required = 1 wrap = <ul>|</ul> } table = tx_commerce_categories select { # Hier wieder die PID eures Kategorien-Ordners pidInList = 5 orderBy = sorting andWhere.dataWrap = parent_category = {field:uid} AND deleted = 0 AND hidden = 0 } # vererbe die Einstellungen von lib.catList.10.renderObj an dieses renderObj renderObj < lib.catList.10.renderObj renderObj = COA renderObj { # zeige den Titel mit Verlinkung an, genauso wie bei lib.catList.10.renderObj.10 (vererbt) 10 < lib.catList.10.renderObj.10 # zeige die Unterkategorien an, genauso wie bei lib.catList.10.renderObj.20 (vererbt) 20 < lib.catList.10.renderObj.20 # wenn noch eine 3. und 4. Kategorien-Ebene abgebildet werden sollen, # dann die folgenden 5 Zeilen verwenden # 20.renderObj = COA # 20.renderObj { # 10 < lib.catList.10.renderObj.10 # 20 < lib.catList.10.renderObj.20 # } } } } } } [Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 29.07.2011 um 16:56.] |
|
Verfasst am: 29. 07. 2011 [21:19]
|
|
|
king.darki
Dabei seit: 10.05.2011
Beiträge: 215
|
Hallo, freut mich wenn ich helfen konnte. Jetzt noch ein Like oder Plus1 auf meiner Website, dann hab ich auch was davon Grüße Patrick |
|
Verfasst am: 01. 08. 2011 [13:45]
|
|
|
ra.s
Themenersteller
Dabei seit: 06.04.2006
Beiträge: 90
|
... kannste haben. sekunde. +g+ |



