Zum Inhalt springen

Designvorlage wird nicht angezeigt - Wo ist der Fehler

Erstellt am 31. Juli 2008 · 17 Antworten · letzte Antwort am 6. August 2008

Tags: Templates & Layouts, Frage

Marion_1977 ·

Hallo Leute,

ich habe folgendes Problem:
Ich habe im Fileadmin im Ordner TEMP meine vorlage.html abgespeichert und will sie unter "Template" mit Typoskript einbinden. Doch leider klappt es nicht.
Der Code im Template ist wie folgt:

seite = PAGE
seite.typeNum = 0

seite.10 = TEMPLATE
seite.10 {
template = FILE
template.file = fileadmin/TEMP/vorlage.html
}

Der Code der vorlage.html ist:

<html>

<head>
	<title>Meine Typo3-Testseite</title>
</head>

<body>
	<table align="center" border="1" width=90%">
		<caption align="center"><b>Meine Typo3-Testseite</b></caption>
	<tr background="fileadmin/images/oben.jpg" >Aller Anfang ist schwer...
	</tr>

	<tr>
		<td background="fileadmin/images/menu.jpg" width="30%">###MENU###</td>
		<td background="fileadmin/images/inhalt.jpg" width=60%">###INHALT###</td>
	</tr>

</body>

</html>

Die Bilder sind im Fileadmin ebenfalls hochgeladen worden.

Einer übergeordneten Seite ist ein anderes Template zugeordnet, das bei mir wohl auch auf die Seite vererbt worden ist für die ich die vorlage.hmtl wünsche.
Das neue Template ist mit
"Create a new template for a new site" angelegt geworden.

Wer kann mir sagen was ich falsch gemacht habe?

Vielen Dank für Eure Antworten,
Marion

Corum ·

Auf den ersten Blick sollte das eigtl so funktionieren.

Was sagt denn der TypoScript-Objectbrowser dazu, kommen die Templateeinstellungen denn an?

Marion_1977 ·

Hallo,

da es mein allererstes Typo3-Projekt ist weiss ich leider nicht ob im Objektbrowser alles ok ist.

CONSTANTS ROOT heisst es da mal und ändern könnt ich da wohl nix - aber mein Typo3-Skript ist ja auch sehr kurz.

Leider, leider hilft mir Deine Antwort nicht weiter.
Trotzdem vielen lieben Dank,

Marion

Marion_1977 ·

Auf ner anderen Seite habe ich den TypoSkript-Code von oben mit
"Click here to create an extension template" eingefügt.

Ergebnis = 1 weisser Bildschirm ohne Layout.
Zumindest habe ich aber das Layout der übergeordneten Seite nicht mehr.
Hab ich evtl. auch noch Fehler in meinem HTML-Code?

Über Eure Hilfe freut sich,
Marion

Unbekannter Benutzer ·

Ja, das ist ziemlich viel Müll drinn... sorry...

In Zeile 15 fehlt ein Anführungszeichen vor dem 60%
Nach Zeile 16 beendest du die Tabelle nicht.
background="fileadmin/images/menu.jpg gibts nicht. Entweder mit style im td oder als class und dann mit background-image:url();

In deiner Vorlage fehlt dir der Hauptsubpart, mit dem gearbeitet werden soll... Also z.B. <!-- ###DOCUMENT### start --> <!-- ###DOCUMENT### stop -->

In deinem TS musst du da natürlich drauf zugreifen.

Desweiteren sprichst du in deinem TS weder den Marker ###MENU### noch den Marker ###INHALT### an... Was soll dann da angezeigt werden?

Versuchs mal so:

<html>

<head>
        <title>Meine Typo3-Testseite</title>
</head>

<body>

<!-- ###DOCUMENT### start -->

        <table align="center" border="1" width=90%">
                <caption align="center"><b>Meine Typo3-Testseite</b></caption>
        <tr  style="background-image:url(fileadmin/images/oben.jpg);">Aller Anfang ist schwer...
        </tr>

        <tr>
                <td style="background-image:url(fileadmin/images/menu.jpg);" width="30%">###MENU###</td>
                <td style="background-image:url(fileadmin/images/inhalt.jpg);" width="60%">###INHALT###</td>
        </tr>
</table>

<!-- ###DOCUMENT### stop -->

</body>

</html>

Im ganze ist der Code aber absoluter Mist. Da ist fast nichts wie es sein sollte.

In deinem TS dann:

page = PAGE
page {
	10 = TEMPLATE
	10 {
		template = FILE
		template.file = fileadmin/TEMP/vorlage.html
		workOnSubpart = DOCUMENT
		marks {
			MENU = ...
			INHALT < styles.content.get
		}
	}
}

css_styled_content dann im root-Template einbinden nicht vergessen

Das wird dir helfen:
http://www.mitwald.de/dokumentation
http://de.selfhtml.org
http://css4you.de

Ich denke du hast weder das Grundlegende TypoScript verstanden, noch HTML und geschweige CSS. Lerne das und versuch es dann wieder.

Lass dich nicht entmutigen, Der Anfang kann schwer sein. Sicher ist aber, Erst mit TYPO3 afangen, wenn du wenigstens HTML sicher kannst.

Marion_1977 ·

Hallo,

Deinen Vorschlag habe ich getestet.
Der Text meiner Seite, den ich unter "Seite" angelegt habe erscheint nun. Jedoch sehe ich immer noch nichts von meiner Designvorlage. Sie wird immer noch nicht eingebunden. Trotzdem recht herzlichen Dank dafür.

Bisher hab ich nur ein paar HTML-Kenntnisse, der Rest fehlt komplett. Früher hab ich mit Dreamweaver 4 gearbeitet, find aber die CD leider nicht mehr.

Die Dokumentation hier hab ich mir schon immer wieder mal durchgelesen, hänge aber schon wenns ums pid-fehlt geht. Da ich mit Version 4.2 von Typo3 arbeite ist vieles wohl auch etwas anders als beschrieben. Und TypoSccript - das versteh ich wirklich nicht sonderlich gut, da hast Du Recht. Leider....

Gruss,
Marion

Michaelh74 ·

Also wenn dein Inhalt ausgegeben wird, dann wird dein Template auch geparst.

Was steht denn im Quelltext Deiner Ausgabeseite?
Wir denn garnichts angezeigt oder fehlen nur die Bilder?

Gruß
Michael

Marion_1977 ·

Hallo,

der ausgegebene Quelltext stimmt nicht mit dem Quelltext der Designvorlage überein was die Tabelle angeht. Hier ist er:

<!DOCTYPE html
PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<!--
This website is powered by TYPO3 - inspiring people to share!
TYPO3 is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.
TYPO3 is copyright 1998-2008 of Kasper Skaarhoj. Extensions are copyright of their respective owners.
Information and contribution at http://typo3.com/ and http://typo3.org/
-->

<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_8192c2092f.css" />
<title>Übung 1</title>
<meta name="generator" content="TYPO3 4.2 CMS" />
<script type="text/javascript" src="typo3temp/javascript_93077bb238.js"></script>

</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table border="0" width="100%"><tr><td with="20%">&nbsp;</td><td width="60%">
<!-- CONTENT ELEMENT, uid:12/text [begin] -->
<a id="c12"></a>
<!-- Header: [begin] -->
<div class="csc-header csc-header-n1"><h1 class="csc-firstHeader">Mein erster Versuch</h1></div>
<!-- Header: [end] -->

<!-- Text: [begin] -->
<p class="bodytext">Aller Anfang ist schwer</p>
<!-- Text: [end] -->

<!-- CONTENT ELEMENT, uid:12/text [end] -->
</td><td width="20%">&nbsp;</td></tr></table><div align="center"><a href="index.php?id=49"><img src="uploads/tf/enterSchild.gif" width="100" height="70" border="0" alt="" title="" /></div></a>
</body>
</html>

Ich denke da stimmt noch was im Template nicht - wobei ich oben vorgeschlagenen Code 1:1 reinkopiert habe.

Gruss,
Marion

Marion_1977 ·

Ich denke es hängt mit meinem Root-Template zusammen. Dies ist der Code:

# Default PAGE object:
page = PAGE
page.bodyTagMargins = 0

page.10 = IMAGE
page.10.file = stop.gif
page.10.wrap = <div align="center"> | </div>

page.15 = COA
page.15.wrap = <table border="0" width="100%"> | </table>
page.15.10 = COA
page.15.10.wrap = <tr> | </tr>
page.15.10 {
10 = COA
10.wrap = <td with="20%"> | </td>
20 = COA
20.wrap = <td width="60%"> | </td>
30 = COA
30.wrap = <td width="20%"> | </td>
}

page.15.10.10 {
10 = TEXT
10.value =  
}
page.15.10.20 {
10 = CONTENT
10.table = tt_content
10.select.orderBy = sorting
}
page.15.10.30 {
10 = TEXT
10.value =  
}

page.30 = IMAGE
page.30.file = enterSchild.gif
page.30.wrap = <div align="center"><a href="index.php?id=49"> | </div></a>

Doch wie behebe ich den Fehler?
Muss ich ein 2. Root-Template anstatt ein Extension-Template für die Seite "Übung1" anlegen?

Startseite 1 is ROOT
Übung 1 is EXT

Marion_1977 ·

Hab jetzt das Template der Übung1 auch als root-Template angelegt und css_styled_content eingebunden.
Jetzt erscheint wieder eine leere Seite mit Seitenquelltext:

<!DOCTYPE html
PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<!--
This website is powered by TYPO3 - inspiring people to share!
TYPO3 is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.
TYPO3 is copyright 1998-2008 of Kasper Skaarhoj. Extensions are copyright of their respective owners.
Information and contribution at http://typo3.com/ and http://typo3.org/
-->

<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_8192c2092f.css" />
<title>Übung 1</title>
<meta name="generator" content="TYPO3 4.2 CMS" />
<script type="text/javascript" src="typo3temp/javascript_93077bb238.js"></script>

</head>
<body>

</body>
</html>

Ich werd noch wahnsinnig.....

Michaelh74 ·

Machs mal genau so:

page = PAGE
page {
        10 = TEMPLATE
        10 {
                template = FILE
                template.file = fileadmin/TEMP/vorlage.html
                workOnSubpart = DOCUMENT
                marks {
                        INHALT < styles.content.get
                }
        }
}

css_styled_content einbinden.

Darauf achten, dass auch das Subpart "DOCUMENT" mit in deinem HMTL Template ist.

Sonst bitte kein weitere TS-Template verwenden - auch kein Extension Template.

Wenn dann auch die Pfade stimmen geht das sicher ;-)

Gruß
Michael

Marion_1977 ·

Hallo Michael,

genau Deinen Code hab ich schon verwendet. css_styled_content ist ebenso ausgewählt.
Ein anderes Template benötige ich, denn das Layout der Startseite ist wie folgt:

http://www.typo3-testseite.de

Da benötige ich ja von vornherein ein neues Template bei allem was ich machen möchte.
Vielleicht ist das aber auch der Grund warum ich das Beispiel in der Dokumentation auch nicht hinbekommen habe.

Gehen 2 Templates bei dem genannten TypoScriptcode nicht?

Gruss,
Marion

Michaelh74 ·

Hallo Marion,

für das 2. Template benutzt Du am besten ein Extension Template mit folgender Zeile. Das reicht völlig aus:

page.10.template.file = fileadmin/TEMP/alternative.html

Wenn die Startseite anders aussehen soll, dann gehe ich oft wie folgt vor:

Site
|- Home
|- Seite1
|- Seite2
etc.

Site bekommt alle TS Angaben die Site-übergreifend gelten.
Site ist ein Shortcut auf Home.
Home erhält ein extension Template.

Alternativ könntest Du auch Site mit dem Template von Home versehen, mußt dann aber mit "Template on next Level" arbeiten.

Viele Grüße
Michael

Marion_1977 ·

Hallo Michael,

Deinen Tipp hab ich nun probiert.
Wenn ich mit einem Extension-Template auf meiner Unterseite "Übung1" arbeite habe ich wieder das Layout meiner übergeordneten Startseite. Meine HTML-Vorlage wird auf der Unterseite wieder nicht angezeigt.

Bei mir im Seitenbaum ist die erste Seite die "Startseite" und die erste Unterseite "Übung1"
Ich habe bei der Unterseite "Übung1" Deinen vorgeschlagenen Typoskriptcode eingesetzt - nur dass die Layoutvorlage bei mir vorlage.hmtl heisst und nicht alternative.html. Dies habe ich natürlich ausgetauscht.
Zudem habe ich einen Shortcut von Übung 1 auf meine Startseite gesetzt.
Als Verweismodus habe ich "erste Unterseite" ausgewählt.
Ergebnis hier ist dass meine Startseite gar nicht mehr erscheint, sondern nur noch die Unterseite "Übung1" mit dem Layout der "Startseite".

Ich krieg noch die Krise.....

Gruss,
Marion

Michaelh74 ·

Dein Struktur muss so aussehen:

Site
|- Startseite
|- Übung 1
|- Seite2
etc.

Site-übergreifendes TS in "Site".
Spezielles TS für Startseite als Ext. Templates in "Startseite".
Wenn dann noch die Template-Pfade 100% stimmen, geht das so sicher ;-)

Gruß
Michael

Marion_1977 ·

Und wenn es kein siteübergreifendes TS gibt?
Wüsste nicht was ich da reinschreiben sollte....
Denn die Site soll ja unterschiedliche Layouts bekommen!

Ohne root-Template geht es aber wohl auch nicht...

Hoffe ich nerve Euch nicht mit meinen "dummen" Fragen !

Gruss,
Marion

P.S. Kann ich mir die vorlage.html auf diese Weise nicht anzeigen lassen?
http://www.typo3-testseite.de/fileadmin/TEMP/vorlage.html
Die Datei ist im Fileadmin unter dem Ornder TMP gespeichert, aber es wird nichts angezeigt, wenn ich Sie mit oben genanntem Link aufrufe.

Marion_1977 ·

Wie lasst ihr Euch die Designvorlage im Browser anzeigen um zu testen ob sie funktioniert?
Wie bekomme ich eine Voransicht der html-Datei im fileadmin?

Danke,
Marion

Michaelh74 ·

Und wenn es kein siteübergreifendes TS gibt?
Wüsste nicht was ich da reinschreiben sollte....
Denn die Site soll ja unterschiedliche Layouts bekommen!

Siteübergreifendes TS anlegen auf der Haupt- / Rootseite!!!
Dort kommt alles rein wie Navi, Temporäre Objekte wie Bilder etc. und das default Template + CSS.

Auf den indivuellen Seite überschreibst Du dann einfach das Template oder/und CSS per Ext. Template.

Michael[/list]