Zum Inhalt springen

Anfängerin - Verständnisproblem in Dokumentation

Erstellt am 13. August 2007 · 11 Antworten · letzte Antwort am 14. August 2007

Tags: Templates & Layouts, Frage

blueberry ·

Hallo zusammen,

ich bin absolute Anfängerin mit typo3, beschäftige mich gerade mal ca. 2 Wochen mit dem Thema und hoffe, dass ich mich nicht zu laienhaft ausdrücke ...

Noch bin ich weit davon entfernt, selbst Templates zu erstellen (habe nur CSS und html-Kenntnisse) und arbeite gerade das Tutorial "Moderne Templateerstellung Teil1" durch. Es geht nur langsam voran, aber jetzt bin ich an eine Stelle in der Dokumentation gekommen, wo ich einfach nichts mehr verstehe.

In Punkt 1.2 der Doku (Die Grundlagen) soll man unter Root page eine Seitenstruktur erstellen, die die Menüpunkte "Homepage", "Licensing", "Terms & Conditions" usw. und diverse Unterseiten enthält. Habe ich gemacht.

In Punkt 1.3 (Integration einer html-Vorlage) arbeitet man dann mit der statischen html-Seite template_1.html (Main Dish & Son), die "dynamisch werden soll". Deren Menüpunkte heißen allerdings "Menu item 1", "Menu item 2" usw.
Nachdem ich das Template wie in der Doku angegeben verändert habe, erhielt ich auch ein dynamisches Menü (hurra!) mit genau den Menüpunkten der template_1.html. ("Menu item 1" usw.)

Nach der Dokumentation soll das dynamische Menü aber die Menüpunkte unserer angelegten Seitenstruktur der Root page ("Homepage", "Licensing" usw.) haben.
Es wird kein Wort darüber verloren, warum das so ist, oder wie und wo ich das Menü abändern kann. Danach wird eifrig mit den Menüpunkten unterhalb der Root page im Backend weitergearbeitet ("Klicken Sie auf License C"), deren Seiten schon Dummy-Inhalte haben sollen ... Meine Seiten sind allerdings leer, irgendwie logisch, denn meine Menüpunkte stimmen ja nicht mit denen der Seitenstruktur im Backend überein.

Ist das vielleicht jemandem auch aufgefallen, der die Doku durchgearbeitet hat? Fehlt da ein wichtiger Hinweis in der Doku oder habe ich einfach irgendwo einen (Denk-)Fehler gemacht?

Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt und würde mich total freuen, wenn jemand einen Hinweis hat!

Danke,
blueberry

blueberry ·

Hallo Daniel!

Danke für Deine Nachricht!
Meinst Du mit TS (was wohl TypoScript heißen soll?) das Template?

Gruß,
blueberry

blueberry ·

Hallo Daniel,

Hier mein Template:

# Configuring the Auto-Parser for main template:

plugin.tx_automaketemplate_pi1 {

    # Read the template file:

  content = FILE

  content.file = fileadmin/template/main/template_1.html

    # Here we define which elements in the HTML that 

    # should be wrapped in subpart-comments:

  elements {

    BODY.all = 1

    BODY.all.subpartMarker = DOCUMENT_BODY

    HEAD.all = 1

    HEAD.all.subpartMarker = DOCUMENT_HEADER

    HEAD.rmTagSections = title

    TD.all = 1

  }

    # Prefix all relative paths with this value:

  relPathPrefix = fileadmin/template/main/

}

# Main TEMPLATE cObject for the BODY

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

    # Feeding the content from the Auto-parser to the TEMPLATE cObject:

  template =< plugin.tx_automaketemplate_pi1

    # Select only the content between the <body>-tags

  workOnSubpart = DOCUMENT_BODY

    # Substitute the ###menu_1### subpart with dynamic menu:

  subparts.menu_1 <temp.menu 1

    # Substitute the ###content### subpart with some example content:

  subparts.content = TEXT

  subparts.content.value = HELLO WORLD - CONTENT

}

# Main TEMPLATE cObject for the HEAD

temp.headTemplate = TEMPLATE

temp.headTemplate {

    # Feeding the content from the Auto-parser to the TEMPLATE cObject:

  template =< plugin.tx_automaketemplate_pi1

    # Select only the content between the <head>-tags

  workOnSubpart = DOCUMENT_HEADER

}

# Default PAGE object:

page = PAGE

page.typeNum = 0

# Copying the content from TEMPLATE for <body>-section:

page.10 < temp.mainTemplate

# Copying the content from TEMPLATE for <head>-section:

page.headerData.10  < temp.headTemplate



# Menu 1 cObject'

temp.menu_1 = HMENU

# First level menu-object, textual

temp.menu_1.1 = TMENU

temp.menu_1.1 {

# Normal state properties

NO.allWrap = <div class="menu1-level1-no"> | </div>

# Enable active state and set properties:

ACT = 1

ACT.allWrap = <div class="menu1-level1-act"> | </div>

# Second level menu-object, textual

temp.menu_1.2 = TMENU

temp.menu_1.2 {

# Normal state properties

NO.allWrap = <div class="menu1-level2-no"> | </div>

# Enable active state and set properties:

ACT = 1

ACT.allWrap = <div class="menu1-level2-act"> | </div>

# Second level menu-object, textual

}

Gruß,
blueberry

brokemeister ·

Du schreibst nirgends hin wo das Menü angezeigt werden soll...

sprich du brauchst noch so was in die Richtung:

page.20 = TEMPLATE
page.20.template =< plugin.tx_automaketemplate_pi1
page.20.workOnSubpart = DOCUMENT_BODY
page.20.subparts {
	# dein platz halter bzw. div-element
	dein_div_id_element < temp.menu
}
blueberry ·

Hi brokemeister,

ich dachte eigentlich das wäre der Teil von Zeile 37 - 53?

# Main TEMPLATE cObject for the BODY

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

    # Feeding the content from the Auto-parser to the TEMPLATE cObject:

  template =< plugin.tx_automaketemplate_pi1

    # Select only the content between the <body>-tags

  workOnSubpart = DOCUMENT_BODY

    # Substitute the ###menu_1### subpart with dynamic menu:

  subparts.menu_1 <temp.menu 1
Unbekannter Benutzer ·

subparts.menu_1 <temp.menu 1

Da ist ein Leerzeichen drin. Das geht nicht. ersetz überall in deinem Script mal temp.menu 1 durch temp.menu_1

Grüße
Christian

blueberry ·

Hallo Kitsunet,

danke für den Hinweis, ich habe es ausgebessert, allerdings hat das Menü vorher auch genauso ausgesehen und funktioniert.

Ich versuche mein Problem mal mit Screenshots zu verdeutlichen:.

Das ist die statische html-Seite, die dynamisch werden soll:

Bild: i55.photobucket.com/…/html.jpg

Im Tutorial werden Quellcode und statisches Menü veranschaulicht.

Bild: i55.photobucket.com/…/quellcode.jpg

So sieht meine Seite aus, zu der ich das template gepostet habe.

Bild: i55.photobucket.com/…/meine_seite.jpg

Aber im Tutorial soll die Seite plötzlich so aussehen, d.h. das Menü soll mit der Seitenstruktur der Root page übereinstimmen. Diese Seitenstruktur habe ich angelegt, aber sie wird nicht übernommen.

Bild: i55.photobucket.com/…/ergebnis.jpg

Wie bekomme ich das so hin?

Gruß,
blueberry

d.​walter ·

Also dein TS sieht ja soweit okay aus, bis auf die Zeile 53.

Die sollte so aussehen:

subparts.menu_1 < temp.menu_1

Ich hab zwar nie mit dem Automaketemplate gearbeitet, abe rwenn ich es richtig im Kopf habe, hast du ja das Menü erstmal händisch erstellt, damit der Automake die entsprechende Subparts generieren kann. Und jetzt ersetzt er einfach die Subparts nicht, so das dein HTML Code aus deinem HTML-Template angezeigt wird.

Vielleicht nochmal prüfen, ob die Subparts richtig im Template drinstehen!

Daniel

blueberry ·

Ich bin jetzt mein TS nochmal Schritt für Schritt durchgegangen und habe auch das Tutorial nochmal gelesen.
Dabei ist mir aufgefallen, dass ich einen Satz überlesen hatte. Das folgende Objekt muss VOR der Definition von "temp.mainTemplate" stehen, dann klappt's:

# Menu 1 cObject
temp.menu_1 = HMENU
# First level menu-object, textual
temp.menu_1.1 = TMENU
temp.menu_1.1 {
# Normal state properties
NO.allWrap = <div class="menu1-level1-no"> | </div>
# Enable active state and set properties:
ACT = 1
ACT.allWrap = <div class="menu1-level1-act"> | </div>
}

# Second level menu-object, textual
temp.menu_1.2 = TMENU
temp.menu_1.2 {
# Normal state properties
NO.allWrap = <div class="menu1-level2-no"> | </div>
# Enable active state and set properties:
ACT = 1
ACT.allWrap = <div class="menu1-level2-act"> | </div>
}

Danke für die Mithilfe!