Zum Inhalt springen

geteiltes Menue

Erstellt am 2. September 2009 · 2 Antworten · letzte Antwort am 2. September 2009

Tags: Frage

schmax66 ·

Hallo,
ich bin absoluter Neuling in Typo3.
Mein Problem ist ein geteiltes Menue.
Die beiden Menues werden nicht angezeigt (ausgelesen?).

Die Website ist mit einem Template und einer CSS-Datei bestückt.

hier das HTML:

<html>
<head>
<title>Innovationscluster</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<!-- ###DOCUMENT_BODY### START-->
<div id="Page">	
<div id="TopLayer">###MENU_OBEN###</div>	
<div id="LogoLayer">###LOGO###</div>	
<div id="RootlineLayer"></div>	
<div id="Middle">		
<div id="Menu_links">###MENU_LINKS###</div>  		
<div id="Content">	###ROOTLINE###		
<!-- ###CONTENT### START-->
<h1>Willkommen</h1>    			
<h2>Hier soll der Inhalt später stehen.</h2>			
<p>An dieser Stelle soll später der Inhalt von Typo3 eingefügt werden.</p>			
<!-- ###CONTENT### END-->  		
</div>	
</div>	
<div id="FooterLayer">Copyright by KSKOMM</div>
</div>
<!-- ###DOCUMENT_BODY### END-->
</body>
</html>

die CSS-Datei:
body {
margin: 0;
padding: 0;
width: 100%;
text-align: center;
background-color: #514E4E;
}

div#Middle {
text-align: left;
margin: 0 auto;
height: 100%;
width: 955px;
}

div#Page {
height: 100%;
font-family: verdana;
text-align: center;
margin: 0 auto;
width: 975px;
padding: 0;
background-color: white;
}

html>body div#Page {
border-color: white;
}

div#Menu_links {
font-size: 9pt;
float: left;
width: 200px;
height: 100%;
margin: 0;
padding: 5px;
background-color: #D7D7D7;
}

div#Menu_links a {
display: block;
padding: 0.2em;
font-weight: bold;
}

div#Menu_links a:link {
color: #514E4E;
text-decoration: none;
}

div#Menu_links a:visited {
color: #514E4E;
text-decoration: none;
}

div#Menu_links a:hover {
color: #514E4E;
text-decoration: none;
}

div#Menu_links a:active {
color: #514E4E;
text-decoration: none;
}

.level1 {
margin-left: 10px;
margin-right: 10px;
margin-top: 10px;
}
.level2{
margin-left: 20px;
margin-right: 10px;
}

div#Content {
margin-left: 200px;
padding: 0 1em;
}

div#Content h1 {
font-size: 1.5em;
margin: 0 0 1em;
}

div#Content h2 {
font-size: 1.2em;
margin: 0 0 1em;
}

div#Content p {
font-size:1em;
margin: 1em 0;
}

div#TopLayer {
font-size: 9pt;
font-family: Verdana;
color: white;
width: 955px;
background-color: #514E4E;
height: 20px;
padding: 5px;
margin-top: 10px;
text-align: left;
}

div#LogoLayer {
width: 955px;
background-image: url('logo-kachel.gif');
height: 159px;
}

div#RootlineLayer {
width: 955px;
background-color: #514E4E;
height: 50px;
}

div#FooterLayer {
width: 975px;
background-color: #514E4E;
height: 30px;
margin: 0;
font-size: 9pt;
font-family: Verdana;
color: white;
text-align: center;
padding: 5px;
}

Und Zuletzt das Setup in Typo3:

page = PAGE
page.stylesheet = style.css
page.typeNum = 0
page.10 = TEMPLATE
page.10.template = FILE
page.10.template.file = template.html
page.10.workOnSubpart = DOCUMENT_BODY
page.10.subparts{
CONTENT<styles.content.get

# Das Textmenü oben erstellen
MENU_OBEN = HMENU
MENU_OBEN {
special = directory
special.value = 60
1 = TMENU
1.NO = 1
1.NO.linkWrap =  | ||*| | ||*| |
}


# Das grafische Menü erstellen
MENU_LINKS = HMENU
MENU_LINKS {
special = directory
special.value = 61
1 = GMENU
1.NO = 1
1.NO {
xy = 200, 14
backColor = #364497
}


# Text auf den Menüpunkt rendern
10 = TEXT
10.text.field = title
10.fontColor = #FFFFFF
10.fontFile = fileadmin/fonts/verdana.ttf
10.fontSize = 9
10.niceText = 1
10.offset = 14, 16
}

# Hilfsebene zur Berechnung der Höhe von Menüpunkten
16 < .10
16.text.case = upper
16.text.listNum = 1
16.fontSize = 22
16.offset = 1000,1000
}

# Eine weisse Linie erzeugen
20 = IMAGE
20.file = GIFBUILDER
20.file {
XY = 200, 1
backColor = #FFFFFF
}
20.offset = 0, 23+[16.h]
}
}
page.10.marks{
LOGO = IMAGE
LOGO.file = logo-header.gif
ROOTLINE = HMENU
ROOTLINE.special = rootline
ROOTLINE.special.range = 0 | -1
ROOTLINE.1 = TMENU
ROOTLINE.1.NOallWrap = | / | |*| / |*| |
}

Kann mir jemand helfen den Fehler zu finden???

Julian.​Hofmann ·

Hallo.

Du bist über den Unterschied zwischen Markern udn Subparts gestolpert. Deine Menüs sind im Template als Marker definiert, d.h. als Text der Art ###MARKERNAME### dort platziert, wo der Inhalt stehen soll. Im Typoscript schreibst Du jedoch (zusammengefasst)

page.10.subparts.MENU_OBEN

, definiert das Menü also als Subpart. Ein Subpart wäre im Template jedoch durch zwei HTML-Kommentare mit dem jeweiligen Subpartnamen als Inhalt zu definieren (wie z.B. ###DOCUMENT_BODY###)

Viele Grüße
Julian

schmax66 ·

Hey, supi
das ist die Lösung:

page = PAGE
page.stylesheet = style.css
page.typeNum = 0
page.10 = TEMPLATE
page.10.template = FILE
page.10.template.file = template.html
page.10.workOnSubpart = DOCUMENT_BODY
page.10.subparts{
CONTENT<styles.content.get
}
page.10.marks{
LOGO = IMAGE
LOGO.file = logo-header.gif
ROOTLINE = HMENU
ROOTLINE.special = rootline
ROOTLINE.special.range = 0 | -1
ROOTLINE.1 = TMENU
ROOTLINE.1.NOallWrap = | / | |*| / |*| |
# Das Textmenü oben erstellen
MENU_OBEN = HMENU
MENU_OBEN {
special = directory
special.value = 60
1 = TMENU
1.NO = 1
1.NO.linkWrap = &nbsp;|&nbsp;&#124;|*|&nbsp;|&nbsp;&#124;|*|&nbsp;|
}


# Das grafische Menü erstellen
MENU_LINKS = HMENU
MENU_LINKS {
special = directory
special.value = 61
1 = GMENU
1.NO = 1
1.NO {
xy = 200, 14
backColor = #364497
}


# Text auf den Menüpunkt rendern
10 = TEXT
10.text.field = title
10.fontColor = #FFFFFF
10.fontFile = fileadmin/fonts/verdana.ttf
10.fontSize = 9
10.niceText = 1
10.offset = 14, 16
}

# Hilfsebene zur Berechnung der Höhe von Menüpunkten
16 < .10
16.text.case = upper
16.text.listNum = 1
16.fontSize = 22
16.offset = 1000,1000
}

# Eine weisse Linie erzeugen
20 = IMAGE
20.file = GIFBUILDER
20.file {
XY = 200, 1
backColor = #FFFFFF
}
20.offset = 0, 23+[16.h]
}
}

Jeztz muss ich nur noch die Farben anpassen.
Vielen Dank!!!