Zum Inhalt springen

Menüproblem mit Autoparser

Erstellt am 30. Juli 2003 · 5 Antworten · letzte Antwort am 30. Juli 2003

Tags: Frage

Jonny ·

Hallo, ich bastel schon einige Zeit an einem dynamischen Menü und finde den Fehler nicht, da ich auch noch recht neu im Umgang mit Templates und Typo3 bin.

# -----Auto-Parser:-----
plugin.tx_automaketemplate_pi1 { 
   # HTML Template einlesen: 
   content = FILE 
   content.file = fileadmin/mbase/templates/main.html
   # Elemente, die Teilmarken erhalten sollen:
   elements { 
      BODY.all = 1 
      BODY.all.subpartMarker = DOCUMENT_BODY
      TD.all = 1 
   }
   # Standartpfad bestimmen:
   relPathPrefix = fileadmin/mbase/
}

# -----Menu:-----
temp.menu_1 = HMENU 
# Erste Ebene:
temp.menu_1.1 = TMENU 
temp.menu_1.1 { 
# Normale Eigenschaften:
NO.allWrap = <div class="men-no"> | </div> 
# Aktivierte Eigenschaften: 
ACT = 1 
ACT.allWrap = <div class="men-act"> | </div> 
} 

# -----Body Template:-----
temp.mainTemplate = TEMPLATE 
temp.mainTemplate { 
# Einlesen des mit Auto Parser erstellen codes:
template =< plugin.tx_automaketemplate_pi1 
# Nur den Inhalt zwischen dem body Tag bearbeiten
workOnSubpart = DOCUMENT_BODY
# den abschnitt menu_1 bearbeiten
subparts.menu_1 < temp.menu_1
}

# -----Standart PAGE Objekt:----- 
page = PAGE 
page.typeNum = 0
page.10 < temp.mainTemplate

Das ist der Code, beabsichtigt ist ein Menü, das sich dynamisch aus den eine Ebene tiefer liegenden Seiten erstellt.
Die stelle des HTML-Templates, wo das Menü hinkommen soll, sieht folgendermassen aus:

 	<TD bgcolor="#eeeeee" width="20%" id="menu_1"> 
		<div class="men-no"><a href="#">Menu item 1</a></div>
		<div class="men-act"><a href="#">Menu item 3 (act)</a></div>
    </TD>

Danke schonmal im vorraus.
Jonathan

malk ·

Schau mal in der Doku von der Autoparser Extension, ob es Probleme gibt, wenn Du anstatt CLASS="..." halt ID="..." benutzt.

Jonny ·

Hallo malk,
nein, ich denke nicht, das das probleme gibt, ich habe es auch mit class= probiert und das funktioniert genausowenig.

und ich kann mir auch die Seite ohne menü und das menü ohne die Seite anzeigen lassen, beide funktionieren.
(page.10 < temp.menu_1) um das menü anzeigen zu lassen

(page.10 < plugin.tx_automaketemplate_pi1) Für die Seite

Beide funktionieren wie gesagt so schonmal, ich denke eher das das problem beim "mainTemplate" liegt, jedoch bin ich mir nicht sicher und ich wüsste auch nicht wo.

malk ·

Komisch, ich sehe da keinen Fehler. Bei mir läuft es einwandfrei so:

###########
# INSERT IN TEMPLATE
###########

temp.mainTemplate = TEMPLATE
temp.mainTemplate {
  template =< plugin.tx_automaketemplate_pi1
  workOnSubpart = DOCUMENT_BODY
 
  # MENULEFT
  subparts.menuleft < temp.leftmenu

  # MENURIGHT
  subparts.menuright < temp.rightmenuhead
  
  # PFAD
  subparts.path < temp.pfad

  # SPRACHE
  subparts.sprache = PHP_SCRIPT
  subparts.sprache {
    file = media/scripts/example_languageMenu.php
  }

  subparts.bw = PHP_SCRIPT
  subparts.bw {
    file = media/scripts/bandwidthMenu.php
  }

  # CONTENT
  subparts.content < styles.content.get

}

Dazu dann noch:

########
# PAGE 
########

page = PAGE
page.typeNum = 0
page.stylesheet = fileadmin/template/sodales/style.css

# BODY 2 PAGE
page.10 < temp.mainTemplate
 
# HEADER 2 PAGE
page.headerData.10  < temp.headTemplate

Ach ja, Auto-Parser:

########
# TEMPLATE
########
plugin.tx_automaketemplate_pi1 {
  content = FILE
  content.file = fileadmin/template/sodales/sodales_tmp.html
  elements {
    BODY.all = 1
    BODY.all.subpartMarker = DOCUMENT_BODY
 
    HEAD.all = 1
    HEAD.all.subpartMarker = DOCUMENT_HEADER
    HEAD.rmTagSections = title
 
    TD.all = 1
    DIV.all = 1
    SPAN.all = 1    
    DIV.all.includeWrappingTag  = 1
    DIV.class.sprache = 1
    DIV.class.content = 1
    DIV.class.path = 1
  }
  relPathPrefix = fileadmin/template/sodales/
}

Steht zwar etwas mehr drin als Du benötigst, aber egal. So funktioniert es jedenfalls bei mir.

Jonny ·

ich habe das Problem gelöst, es lag daran, das ich im HTML Template ebenfalls eine markierung für den DOCUMENT_BODY hatte und Typo3 wohl mit 2 hintereinanderfolgenden gleichen marker nicht zurecht kommt.

Aber trotzdem danke für deine Hilfe.