Zum Inhalt springen

Wrap um COA??

Erstellt am 4. Februar 2009 · 3 Antworten · letzte Antwort am 5. Februar 2009

Tags: Frage

jumping-blueberry ·

Hallo liebe Typo3-Community,

Ich habe ein Problem und weiß nicht, wo der Fehler liegt.

Wie bereits mehreren Beiträgen zu entnehmen ist, habe ich den T3Blog integriert.
Nachdem es nun nicht möglich war, meine Layoutdatei mit dem Template zu verquicken, bin ich den umgekehrten Weg gegangen und versuche meine Layoutdatei in Typoscript zu definieren.

Eigentlich klappt es sogar recht gut.
Nun habe ich aber in meinem layout einen Head-div und darunter einen body-div.
Daher kann ich die Spalten nicht einfach aus dem Standard-template übernehmen, sondern muss ein neues COA anlegen in das ich dann 3 Spalten "stecke". So dachte ich mir jedenfalls, dass es geht!

#col1 - wrap löschen
plugin.tx_t3blog_pi1.layoutBlog.20.stdWrap.wrap >
#col2 - wrap löschen
plugin.tx_t3blog_pi1.layoutBlog.30.stdWrap.wrap >

#Alle 3 Spalten "body"
plugin.tx_t3blog_pi1.myblog.template.20 = COA
plugin.tx_t3blog_pi1.myblog.template.20.wrap = <div id="body">|</div>

#Navi
plugin.tx_t3blog_pi1.layoutBlog.20.wrap >
plugin.tx_t3blog_pi1.myblog.template.20.10 =< navihp
plugin.tx_t3blog_pi1.myblog.template.20.10.wrap=<div id="navi">|</div>

#Blogeinträge
plugin.tx_t3blog_pi1.myblog.template.20.20 < plugin.tx_t3blog_pi1.layoutblog.30  
plugin.tx_t3blog_pi1.myblog.template.20.20.StdWrap.wrap=<div id="bodyinner">|</div>

#Rechts - widgets
plugin.tx_t3blog_pi1.myblog.template.20.30 < plugin.tx_t3blog_pi1.layoutblog.40  
plugin.tx_t3blog_pi1.layoutBlog.40.stdWrap.wrap = <div id="widgets>|</div><div id="rechts"></div>
#plugin.tx_t3blog_pi1.myblog.template.20.30.wrap=<div id="widgets">|</div>

Nun ist schließt das Element "<div id="body">" aber nur die Navi ein.
Außerdem funktioniert die Zuweisung des Wraps nur, wenn man sie direkt auf das kopierte Objekt anwendet.

Muss ich vielleicht einen anderen Wrap benutzen oder habe ich einen Denkfehler?

Danke im Voraus für Eure Hilfe

SLAng ·

Auf jedenfall fallen mir schonmal 2 Fehler ins Auge...

Zeile 12:

plugin.tx_t3blog_pi1.myblog.template.20.10 =< navihp

Hier setzt du etwas gleich navihp und kopierst gleichzeitig (=<) Das geht nicht

Zeile 17 ist stdWrap falsch geschrieben.

Generell ist nen bischen schwer zu verstehen was du da überhaupt machst.

Wenn der Wrap in einem COA direkt drinn steht, dann umschließt der auch alle weiteren Elemente des COA. Ich denke eher du hast bei deinem kopieren und löschen was falsch gemacht.

jumping-blueberry ·

Ich dachte "=<" nennt sich referenzieren!
Geht referenzieren also nur, wenn man auf andere codeteile zugreifen will und nicht bei Variablen?
Aber wenn ich es nur mit "=" zuweise, dann wird der Code gar nicht erkannt.
Also es gibt dann kein Div mit der ID "navi".
Mit dem Kopier-operator geht es wieder.

#col1 - wrap löschen
plugin.tx_t3blog_pi1.layoutBlog.20.stdWrap.wrap >
#col2 - wrap löschen
plugin.tx_t3blog_pi1.layoutBlog.30.stdWrap.wrap >
plugin.tx_t3blog_pi1.layoutBlog.40.wrap >
plugin.tx_t3blog_pi1.layoutBlog.30.wrap >
plugin.tx_t3blog_pi1.layoutBlog.40.stdWrap.wrap = <div id="widgets>|</div><div id="rechts"></div>

#Alle 3 Spalten "body"
plugin.tx_t3blog_pi1.myblog.template.20 = COA
plugin.tx_t3blog_pi1.myblog.template.20.wrap = <div id="body">|</div>

#Navi
plugin.tx_t3blog_pi1.myblog.template.20.10 < navihp
plugin.tx_t3blog_pi1.myblog.template.20.10.wrap=<div id="navi">|</div>

#Blogeinträge
plugin.tx_t3blog_pi1.myblog.template.20.20 < plugin.tx_t3blog_pi1.layoutblog.30  
plugin.tx_t3blog_pi1.myblog.template.20.20.stdWrap.wrap=<div id="bodyinner">|</div>

#Rechts - widgets
plugin.tx_t3blog_pi1.myblog.template.20.30 < plugin.tx_t3blog_pi1.layoutblog.40  
#plugin.tx_t3blog_pi1.myblog.template.20.30.wrap=<div id="widgets">|</div>

Wie finde ich nun heraus, wo ich beim kopieren und löschen etwas falsch gemacht habe.
plugin.tx_t3blog_pi1.myblog.template.20.30 taucht z.B. nicht im Object-Browser auf, das ist schon einmal ein Anzeichen für einen Fehler... Aber ich weiß nicht, wo der sein soll. (Edit: wenn ich den wert "referenziere" (=<) taucht es auf)

Ich habe jetzt auch alle Elemente, die das COA nicht betreffen über das COA gestellt.
Oder ist das egal?

Was ist eigentlich der Unterschied zwischen "stdWrap.wrap" und einfach nur "wrap"??

Edit2: was mir gerade beim syntaxhightlighting auffällt: Muss man html-tags irgendwie escapen, dass die Klammern nicht als Kopieroperator gelten?

jumping-blueberry ·

So, ich habe den Code nun entrümpelt und umgewandelt.
Vorher wurde in plugin.tx_t3blog_pi1.myblog.template das komplette Standardlayout hineinkopiert.
Nun habe ich dieses Element in ein COA umgewandelt.
Hierbei lässt sich nun klar feststellen, dass das eigentliche Problem daran lag, dass Blogeinträge und widgets gar nicht in mein Template übernommen wurden.

Ich habe dann die einzubettenden Elemente aus dem Objektbrowser kopiert.
Obwohl ich eigentlich keinen Unterschied in der Schreibweise erkennen konnte, funktioniert es jetzt:

page.bodytag=<body id="blog">

plugin.tx_t3blog_pi1.myblog.template = COA

#head
plugin.tx_t3blog_pi1.myblog.template.10.wrap= <div id="head">|</div>
plugin.tx_t3blog_pi1.myblog.template.10 = COA

#Logo setzen
plugin.tx_t3blog_pi1.myblog.template.10.1 = TEXT
plugin.tx_t3blog_pi1.myblog.template.10.1.value=<img src="bilder/logohead.gif" alt="Behandlungszentrum Aschau" width="300" height="55" id="logo" />

## Kopflogos setzen
plugin.tx_t3blog_pi1.myblog.template.10.2 = IMAGE
plugin.tx_t3blog_pi1.myblog.template.10.2 {
wrap = <div id="headbild1" class="headbild">|</div>

# Parameter für das Img-Objekt
   alttext.field = nav_title
   titletext.field = title
   # Der Import des Bildes
   file {
         import = uploads/media/
         import.data = levelmedia: -1, slide
         import.listNum = 0
           }
   }
plugin.tx_t3blog_pi1.myblog.template.10.3 = IMAGE
plugin.tx_t3blog_pi1.myblog.template.10.3 {
wrap = <div id="headbild2" class="headbild">|</div>
  # Parameter für das Img-Objekt
   alttext.field = nav_title
   titletext.field = title
   # Der Import des Bildes
   file {
         import = uploads/media/
         import.data = levelmedia: -1, slide
         import.listNum = 1
           }
}
plugin.tx_t3blog_pi1.myblog.template.10.4 = IMAGE
plugin.tx_t3blog_pi1.myblog.template.10.4 {
wrap = <div id="headbild3" class="headbild">|</div>
  # Parameter für das Img-Objekt
   alttext.field = nav_title
   titletext.field = title
   # Der Import des Bildes
   file {
         import = uploads/media/
         import.data = levelmedia: -1, slide

         import.listNum = 2
           }
}



#Alle 3 Spalten "body"
plugin.tx_t3blog_pi1.myblog.template.20 = COA
plugin.tx_t3blog_pi1.myblog.template.20.wrap = <div id="body">|</div>

#Navi
plugin.tx_t3blog_pi1.myblog.template.20.10 < navihp
plugin.tx_t3blog_pi1.myblog.template.20.10.wrap=<div id="navi">|</div>

#Blogeinträge
plugin.tx_t3blog_pi1.myblog.template.20.20 < plugin.tx_t3blog_pi1.layoutBlog.30 
plugin.tx_t3blog_pi1.myblog.template.20.20.stdWrap.wrap=<div id="bodyinner">|</div>

#Rechts - widgets
plugin.tx_t3blog_pi1.myblog.template.20.30 < plugin.tx_t3blog_pi1.layoutBlog.40 
plugin.tx_t3blog_pi1.myblog.template.20.30.stdWrap.wrap=<div id="widgets">|</div>

page.10.template = < plugin.tx_t3blog_pi1.myblog.template