Zum Inhalt springen

Schwerer Anfang: Wie Layout festlegen?

Erstellt am 9. Januar 2004 · 9 Antworten · letzte Antwort am 14. März 2004

Tags: Frage

ralfkothe ·

An die Typo3-Expertengemeinde meine (sicher naive) aber für einen Anfänger aufdringliche Frage nach dem „richtigen“ Beginn.

Ich finde in den Tutorials zwei (?) Ansätze. Robert Meyer baut das Layout auf mit normalen, leeren HTML-Seiten, die er in Subparts ###DOKUMENT### und Markern ###MARKER### mit Inhalt füllen lässt. Bei „Der Einstieg“ von Kasper Skårhøj (in der Übersetzung von Robert Lemke) ist davon überhaupt nicht die Rede.

Leider habe ich das Modern Template Building Tutorial Part 1 noch nicht auf deutsch gefunden. R4s ist auch weg aus diesem Forum, oder?

Welches ist der erfolgversprechendere Ansatz (oder besteht gar kein Widerspruch)?

Ralf

bnai ·

Hi,

normalerweise hast du ein HTML-Template das durch dein Template-Record (Typo3-Template) "gefüllt" wird (in die entsprechenden Marker rein). Du erstellst dir also am besten erst mal ein HTML-Template, also eine normale HTML-Datei, und deklarierst darin, wie deine Seite grob aussehen soll, meine besteht beispielsweise aus einer Tabelle. Dort definierst du die Marker (ist in den Dokus beschrieben), die du dann mit deinem template in Typo füllen kannst, z.B mit Content, Navi.. etc.

Hoffe das hilft dir bei deinen ersten Schritten...

maxhb ·
ralfkothe schrieb

Leider habe ich das Modern Template Building Tutorial Part 1 noch nicht auf deutsch gefunden.

habe neulich in einem thread dieses Forums gelesen, dass daran noch gearbeitet wird...

ralfkothe schrieb

Welches ist der erfolgversprechendere Ansatz (oder besteht gar kein Widerspruch)?

Ich denke beide Ansätze wiedersprechen sich nicht unbedingt, sondern es ist eher eine Frage des persönlichen Geschmacks.

CU
maxhb

P.S.: MTB ist aber auf jeden Fall eine gute Grundlage. Falls Du nicht bis zu einer Übersetzung warten kannst versuch doch ruhig die englische Version, ist recht verständlich geschrieben.

stevenx ·

Hmm also ich hab nur ein HTML Template für ALLE Seiten.

Ist das sinnvoll? Oder soll ich lieber für jede Unterseite die anders ist ein eigenens Template nutzen?

Ich hab grad meine erste eigene Extension geschrieben,
man kann ja auch direkt da im PHP alles so machen wie es aussehen soll. ist das sinnvoll?

bnai schrieb

Hi,

normalerweise hast du ein HTML-Template das durch dein Template-Record (Typo3-Template) "gefüllt" wird (in die entsprechenden Marker rein). Du erstellst dir also am besten erst mal ein HTML-Template, also eine normale HTML-Datei, und deklarierst darin, wie deine Seite grob aussehen soll, meine besteht beispielsweise aus einer Tabelle. Dort definierst du die Marker (ist in den Dokus beschrieben), die du dann mit deinem template in Typo füllen kannst, z.B mit Content, Navi.. etc.

Hoffe das hilft dir bei deinen ersten Schritten...

bnai ·

@stevenx

also ich weiß jetzt nicht genau was du mit ALLE Seiten meinst, also ich verwende 1 HTML-Template für eine gesamte Webseite, dir steht natürlich offen, für jeden Template-Record ein anderes HTML-Template zu benutzen. Natürlich kannst du auch ein HTML-Template für 10 Webseiten verwenden...

maxhb ·

Hi!

bnai schrieb

@stevenx

also ich weiß jetzt nicht genau was du mit ALLE Seiten meinst, also ich verwende 1 HTML-Template für eine gesamte Webseite, dir steht natürlich offen, für jeden Template-Record ein anderes HTML-Template zu benutzen. Natürlich kannst du auch ein HTML-Template für 10 Webseiten verwenden...

Hier ging es wohl darum, dass ja nicht alle Seiten einer Website unbedingt ein identisches Layout haben müssen. Kann ja durchaus sein, dass z.B. das Framework immer gleich bleibt und dann spezielle Ableitungen für einige Seiten existieren...
In solch einem Falle nehme ich auch gern nur ein eiziges Template, falls die Ähnlichkeit der einzelnen Seiten(-typen) gross ist. Bei all zu starken "Speziallayouts" für bestimmte Seiten spendiere ich dann aber lieber ein zweites Template, statt alles über TS konfigurieren zu müssen.

CU
maxhb

ralfkothe ·

Danke für die Antworten. Ich präzisiere meine ursprüngliche Frage:
Muss man mit einer HTML-Designvorlage arbeiten oder gibt es einen Weg ausschließlich über TypoScript ohne HTML-Muster?

mduerr ·

Man kann das Design einer Website mit TypoScript, also ohne HTML-Template aufbauen. Ich finde, dass diese Vorgehensweise gerade für Anfänger (bin selbst einer) wesentlich einfacher nachvollziehbar ist. Man muss vor allem kein GOLIVE oder vergleichbare WebsiteDesign-Software haben.

Beispiel:
Das Browserfenster wird durch Framsets und Frames in die gewünschten Bereiche eingeteilt. Weitere Infos dazu in entsprechender HTML-Doku, z.B. http://selfhtml.teamone.de/.

# im setup-Bereich eines Templat eingeben
# Definition äußeres Framset
outer_frameset = PAGE
outer_frameset.typeNum = 0

# Bereich für Menü
menu_left = PAGE
# im Bodytag wird u. a. ein Bild als Hintergrund definiert (hier auskommentiert)
#menu_left.bodyTag = <body bgcolor = "#56ADE4" style ="background-image:url(fileadmin/images/xyz.gif); background-repeat:no-repeat; background-position:0px 0px;">
menu_left.typeNum = 1

# Bereich für variablen Inhalt
page= PAGE
page.typeNum = 2

# Kopf-Bereich
top= PAGE
top.bodyTag = <BODY bgcolor = blue>
#top.bodyTag =<SPAN CLASS="sd-abs-pos" STYLE="position: absolute; top: 10px; left: 10px; width: 460px"><IMG SRC="fileadmin/images/Logo.jpg" WIDTH=460 HEIGHT=33 BORDER=0></SPAN>
top.typeNum = 3
top.10 = HTML

bottom = PAGE
bottom.typeNum = 4

# Definition des äußeren Frameset (hier 2 Spalten, 1. Spalte hat 200 Pixel
outer_frameset.frameSet.cols= 200,*
outer_frameset.frameSet.params = border="0" framespacing="0" frameborder="NO"
outer_frameset.frameSet {
1 = FRAME
# den Frames werden die jeweiligen content-Bereiche zugeordnet
1.obj = menu_left
1.params = scrolling="NO" noresize frameborder="NO" marginwidth="5" marginheight="200"
2 = FRAMESET
2.rows= 60, *, 25
2 {
1 = FRAME
1.obj = top
1.params = scrolling="NO" noresize frameborder="NO" marginwidth="0" marginheight="0"
2 = FRAMESET
2.cols = 700,*
2 {
1 = FRAME
1.obj = page
1.params = scrolling="AUTO" noresize frameborder="NO" marginwidth="7" marginheight="3"
#target = "_self"
}
3 = FRAME
3.obj = bottom
3.params = scrolling="NO" noresize frameborder="NO" marginwidth="0" marginheight="0"

}
}