Zum Inhalt springen

vorgefertigtes Template

Erstellt am 7. Juli 2003 · 20 Antworten · letzte Antwort am 9. Juli 2003 · Seite 1 von 2

Tags: Frage

tmallee ·

Da hilft nur Tutorials lesen. Hast Du schon das "Modern Template Building Part I" gelesen? Da wird das perfekt erklärt, und zwar Schritt für Schritt.

Gruss

Thomas

Saesh ·

Das habe ich quer gelesen.
Was ich immer brauche ist "Beistand".

Jemand der mir nebenbei noch erklären kann wie was genau zu machen ist.

Darum ja auch gerade diese Anfrage.

sushi ·

und ein paar auserleserne können mit dem modern template tutorial was anfangen die restlichen 80% (ich inklusive)brauchen etwas länger und eine andere doku.

sushi

tmallee ·

ok, vergessen wir mal für einen Moment die Frage nach der Qualität der Dokumentation. Der beste Weg ist der, dass Du ein paar eigene Versuche startest. Sobald Du Probleme bekommst, die Du nicht anhand von Dokus oder Beispielseiten lösen kannst, postest Du den Code in das Forum. Dort wird man sich den Code ansehen und Dir auch helfen.

Je mehr Du Dich mit Typo beschäftigst, desto klarer werden Funktionsweise und Zusammenhänge von Template / TypoScript und TS Config und die Zahl der Fragen, die Du nicht lösen annst, nimmt deutlich ab.

Eine gute Adresse ist auch unter Typo3 die englische Userlist (Documentation / Userlist Archive) bzw. die FAQs.

Viele Grüsse

Thomas

sushi ·

ich hab ja auch geschrieben das die community um typo3 super cool ist was anderes hätte ich mir auch nicht erwartet. #giggle#

mein problem mit der doku is folgendes:

Inserting Page Content
ich lege wie nach tut. das content element an.

im setupfeld steht wie nach anleitung
"
temp.mainTemplate = TEMPLATE
temp.mainTemplate
{
template =< pligin.tx_automaketemplate_pi1
workOnSubpart = DOCUMENT_BODY
subparts.menu_1 < temp.menu_1
subparts.content < styles.content.get

}
"
leider steht in den ganzen kapitel nicht wie und wo er die text hinstellt wird.
der code funkt bei mir leider nicht. (The page is not configured! [type= 0][])

es steht was von wegen css style content aber nicht wie ich den content in die seite bekomme.

leider nix auskennen tun :x

sushi

Saesh ·

ich werde mich wieder icoya zuwenden.

auch wenn es da arge probleme mit gibt werde ich diese schon in den griff bekommen.

die komfortabilität für den redakteur ist da einfach besser und man kann ne sekretärin später im produktivbereich nicht an t3 setzen 🙂

tmallee ·

Der Code definiert lediglich ein Objekt, welches in Deinem Falle folgendes tut:

1. Das Objekt definiert ein TEMPLATE (Zeile 1)
2. Das eigentliche Templatefile wird über das plugin plugin.tx_automaketemplate_pi1 zur Verfügung gestellt
3. Dann ersetzt dieses Objekt den Subpart "menu_1" mit dem Inhalt des OBJEKTES temp.menu_1
4. Schliesslich wird der Subpart "content" mit dem aktuellen Datenbankinhalt gefüllt. Dafür verwendet der Code das Standardtemplate "CSS styled content". Dieses Templet muss auf jeden Fall eingebunden sein:

a) Klicke auf die Seite
b) Klicke auf "Template" in der Navigation
c) Klicke im Pulldown oben links auf "Info/Modify"
d) Klicke auf den Link "Click here to edit whole Template record"
e) Nun findest Du im unteren Drittel der Seite eine
Auswahlbox "Templates (from Extension)". Dort wird Dir das "CSS styled Content" vorgestellt. Klicke einmal auf das Template, um es in die linke Box zu übernehmen
f) speichere das Template ("Update")

Der Grund, warum das ganze bei Dir nicht läuft ist der, dass Du bisher nur Objekte definiert hats, die irgendwelche Funktionen zur Verfügung stellen. Du hast aber noch nicht gesagt, wie diese Objekte in der Seite ("PAGE") dargestellt werden sollen. Daher der Fehler: Page not configured.

Damit das alles angezeigt wird, musst Du folgendes machen:

1. die Objekte (temp.menu_1, plugin) müssen entweder innerhalb des Setups der Seite definiert werden oder aber von einem anderen Ort eingebunden werden
2. dann musst Du die eigentliche PAGE definieren (in meinem Fall eine Standardseite, also keine Frames):

page = PAGE
page.typeNum = 0

und schliesslich den Inhalt Deiner hübsch definierten Objekte in die Seite kopieren:

page.10 < temp.mainTemplate

page.10 < temp.mainTemplate

Das ist aber auch schon ein recht komplexes Beispiel. Du kannst auch kleiner anfangen: Page definieren, und Inhalt aus der Datenbank abholen (mit "css tyled content"):

page = PAGE
page.typeNum = 0
page.10 < styles.content.get

Ich hoffe, das bring ein wenig Licht ins Dunkle 😉

Gruss

Thomas

sushi ·

Der Grund, warum das ganze bei Dir nicht läuft ist der, dass Du bisher nur Objekte definiert hats, die irgendwelche Funktionen zur Verfügung stellen. Du hast aber noch nicht gesagt, wie diese Objekte in der Seite ("PAGE") dargestellt werden sollen. Daher der Fehler: Page not configured.

Damit das alles angezeigt wird, musst Du folgendes machen:

1. die Objekte (temp.menu_1, plugin) müssen entweder innerhalb des Setups der Seite definiert werden oder aber von einem anderen Ort eingebunden werden
2. dann musst Du die eigentliche PAGE definieren (in meinem Fall eine Standardseite, also keine Frames):

Code:
page = PAGE
page.typeNum = 0

und schliesslich den Inhalt Deiner hübsch definierten Objekte in die Seite kopieren:

Code:
page.10 < temp.mainTemplate

page.10 < temp.mainTemplate

Das ist aber auch schon ein recht komplexes Beispiel. Du kannst auch kleiner anfangen: Page definieren, und Inhalt aus der Datenbank abholen (mit "css tyled content"):

Code:
page = PAGE
page.typeNum = 0
page.10 < styles.content.get

Ich hoffe, das bring ein wenig Licht ins Dunkle

Gruss

Thomas

also jetzt reichts die letzten 10 zeilen haben mir mehr gebracht als 2 x das bulid. mod. tot. zu lesen.
ich hab noch ein paar fragen.

1. styles.content.get ist der inhalt des textfeldes den ich im content eingegeben habe?
2. styles.?.get heißt der headertext ???
3. kann ich die die bilder auch mit einem styles.irgendwas auslesen???
4. style. ist nur ein objekt das die styles extentions macht?

danke für die ruhe die geduld und deinen bemühungen
sushi

p.s. magst du nicht ein neues template building tut. schreiben tausen jünger werden es dir danken.

sushi ·

ich hab jetzt folgenden teil geschrieben und es funkt.
supi so weit so gut aber jetzt werde ich über mutig und möchte direkt aus der datenbank in ein template schreiben.

#ersten und dritten verstehe ich.
plugin.tx_automaketemplate_pi1 {
content = FILE
content.file = fileadmin/template/test2.html
elements {
TD.all = 1
}

}

#hier hab ich mein problem
temp.mainTemplate = TEMPLATE
temp.mainTemplate {
template =< plugin.tx_automaketemplate_pi1
subparts {
INHALT = TEXT
INHALT.value = das soll der text hin
BILD = TEXT
BILD.value = DA soll nachher das bild stehen.
BILD_TEXT= TEXT
BILD_TEXT.value = das ist der bild alternativtext
INSIDE_HEADER = TEXT
INSIDE_HEADER.value = oops WE CHANGED THE HEADER
}
subparts.content < styles.content.get
}

page = PAGE
page.typeNum = 0
page.10 = TEXT
page.10 < temp.mainTemplate

# mit styles.content.get bekomme ich den text vom cms
INHALT = TEXT
INHALT.value = styles.content.get
#funktioniert leider nicht, ich denke das das am TEXT typ liegt deswegen hab ich
INHALT = CONTENT
INHALT.value = das soll der text hin
# nur leider funktioniert das leider auch nicht das dürfte an etwas anderem liegen. wer weiß wiso und wer würde es mir sagen??

danke

sushi

tmallee ·

Hm, offenbar bist Du ein grosses Stück weitergekommen. Glückwunsch! Nun bist Du langsam soweit, dass Du Dich in die TSRef vertiefen kannst, aber dazu gleich mehr.

Grundsätzlich ist es so, dass das styles.content.get Inhalt aus der Datenbank holt. Wie der Inhalt letztendlich dargestellt wird, hängt ganz entscheidend von den verwendeten Inhaltstypen ab (und natürlich Deinen TypoScript Einstellungen). Wenn Du etwa den Inhaltstyp "Text mit Bild" wählst, wird der Datenbankinhalt sofort in HTML Schablonen gepackt, die die gewünschte Darstellung generieren (kann man natürlich alles einstellen....). Gleichzeitig werden auch die Bilddaten gerendert.

Das Template styles.content.get kennt drei "Orte", wo es Inhalt sucht:

styles.content.get: Inhalte aus der Spalte "Normal"
styles.content.getLeft: Inhalte aus der Spalte links
styles.content.getRight: Inhalte aus der Spalte "Rechts"
styles.content.getBorder (glaube ich....): Inhalte aus der Spalte "Rahmen"

Wenn Du jetzt keinen Inhaltstyp "Text mit Bild" verwenden möchtest, sondern die Aufteilung zwischen Text und Bild Deinem Template komplett überlassen möchtest, kannst Du folgendes machen:

1. Spalte "Normal" mit Text füllen (Inhaltstyp "Text")
2. Spalte "Links" mit einem Bild füllen (Inhaltstyp "Bild")

Jetzt kannst Du die einzelnen Subparts zuweisen:

subparts.BILD < styles.content.getLeft
subparts.INHALT < styles.content.get

Es gibt in Typo viele verschiedene Inhaltstypen, die Du auch alle völlig autark steuern kannst. Im Prinzip kannst Du die gesamte Ausgabe der Inhalte bis auf die unterste Datenbankebene über Typoscript abbilden (wobei Dir die vordefinierten Inhaltstypen das Leben allerdings gerade am Anbfang sehr erleichetern).

Wo kannst Du vordefinierte Einstellungen verändern?

Schau Dir bei den Templates den "Typoscript Object Browser" (TSOB) an. Dort werden alle Zustände Deines Templates bzw. Deiner Seite hierarchisch abgebildet. Über den Button "TS" erhälst Du zusätzlich eine komplette Sprachreferenz.
Das wichtigste Dokument für Typoscript ist die Referenz "TSRef" unter typo3.org / Documentation. Dort findest Du alle möglichen TypoScript Einstellungen, teils mit Beispielen. Dort wirst Du auch weitere Inhaltstypen finden (neben TEXT gibt es da etwa noch IMAGE und vieles mehr...).

Vielleicht solltest Du Dich am Anfang mehr auf die vordefinierten Inhaltstypen und Templates verlassen und versuchen, diese mit dem TSOB an Deine Bedürfnisse anzupassen. Wenn Dir das alles zu eng werden sollte, kannst Du später immer noch eigene Templates bis auf Feldebene der Datenbank schreiben.

Viele Grüsse

Thomas

sushi ·

DU BIST EIN GOTT 😃

Vielleicht solltest Du Dich am Anfang mehr auf die vordefinierten Inhaltstypen und Templates verlassen und versuchen, diese mit dem TSOB an Deine Bedürfnisse anzupassen. Wenn Dir das alles zu eng werden sollte, kannst Du später immer noch eigene Templates bis auf Feldebene der Datenbank schreiben.

tja leider muß ich das komplett lernen weil ich das im auftrag einer firma mache oder glaubst du das es so auch der schnellere weg ist in dem ich das quickstartpackage wieder installiere und durch modifikation lerne oder soll ich weiter das dummy package installiert lassen und weiter so auf try and error coden???

nochmals danke für die hilfe
sushi

lijmpatron ·

ahoi sushi

haste mal "go live" tut angesehen? ist für den schnellen anfang gut geeignet, wenn du nicht die fertigen templates benutzen willst, bzw. die dokus nix gut sind für dich.

rolli ·

Hallo lijmpatron,

lijmpatron schrieb

...
bzw. die dokus nix gut sind für dich. ...

Auch ich bin anfänglich NICHT allzuweit mit den in den Docus enthaltenen Beispielen gekommen, ebensowenig wie mit den Beispielen in dem GoLive Docu 🙁 🙁 🙁 (Irgendwas funktionierte nicht, bzw. war nicht praxisgerecht, dann bekommst Du die Kriese und gibst leicht auf).
Zum "Nachschlagen" jedoch nicht schlecht und mit der Hilfe des Forums hier wird man/frau schon recht gut auf die Beine gestellt. Danke an dieser Stelle an Alle.
rolli

tmallee ·

Hi sushi,

danke für die Blumen, aber die entscheidenden Schritte kamen von Dir!

Ich würde mir das Quickstart eventuell zusäztlich lokal installieren, um bei Gelegenheit mal in die Templates sehen zu können. Wobei ich glaube, dass Du ab jetzt auch so zurrecht kommen wirst.

Typo ist sehr komplex und muss immer den Spagat zwischen völliger Anpassbarkeit (da jeder seine Inhalte anders abbildet) und möglichst vielen vordefinierten Funktionen und Abläufen (da man ja nicht alles neu aufbauen möchte) hinbekommen. Es gibt deshalb zum Debuggen von TypoScript Seiten noch ein sehr nützliches Tool: das Admin panel. Das kannst Du für jede Seite aktivieren, indem Du in das Setup des entsprechenden Templates folgendes einträgst:

config.admPanel=1

Das Panel wird im Frontend angezeigt und besitzt auch Schalter für TypoScript. Dort kannst Du dann sehen, welchen HTML Content welcher TypoScript Befehl generiert und kannst somit auch schneller Probleme beim Output erkennen.

Viel Spass beim Basteln!

Thomas

Kathrin ·

Also wer möchte kann von mir mein Template zum angucken und verstehen haben. 🙂

Wer Interesse hat einfach ne PN oder Mail. 8-)

Gruß Kathrin

rolli ·

Hallo Kathrin,

Kathrin schrieb

Also wer möchte kann von mir mein Template zum angucken und verstehen haben. 🙂

Gruß Kathrin

Guter Platz hier, um das Geheimniss zu lüften.

MFG
rolli

rolli ·
Kathrin schrieb

Was denn für ein Geheimnis ?

Also wer möchte kann von mir mein Template zum angucken und verstehen haben

Hätt` ich ebenfalls gern, danke.

Einen schönen Tag,
rolli
(der ebenfalls noch am "basteln" ist)