[TYPO3-german] Welches Know-How wird für Extensions vorrausgesetzt?

Christian Wolff chris at connye.com
Mon May 17 00:42:34 CEST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 16.05.2010 21:40, schrieb Patrick Leuppert:
> Hallo Chris,
> 
> danke für deine Antwort. Wie bereits gesagt bin ich Typo3 Neuling und
> dementsprechend ist auch mein Verständnis von TypoScript noch nicht
> sonderlich groß. Ich programmiere seit 10 Jahren PHP. Also
> Programmierung ansich soll mal nicht das Problem darstellen. Ich
> verstehe nur nicht so ganz die Zusammenhänge. Zum Beispiel, wie ich
> meinem Frontend "sage", dass das Template mit dem Namen xyz.html für die
> Extension abc genommen werden soll. Gibt es da eine gute Anleitung mit
> der man möglichst schnell voran kommt mit dem Thema? Nach dem lesen der
> realty Dokumentation bleiben für mich nach wie vor diese Fragen offen
> (Template <-> Extension).
> 
> Gruß Patrick

Hi Patrick das wichtigste was du verstehen must ist das typoscript eine
configurations sprache ist. (es wird ein configurations array erzeugt)
aus dieser configuration werden dann in php objecte erzeugt.

folgendes simples TS:

page = PAGE
page.10 = TEXT
page.10.value = hallo welt!

erzeugt folgenes $conf array:

$conf = array(
  'page' => 'PAGE',
  'page.' => array(
    '10' => 'TEXT',
    '10.' => array(
      'value' = 'hallo welt!',
    )
  ),
);

um nun objecte zu initiieren geht typo3 immer nach folgendem rezept vor.
(pseudo code)

 // cObjGetSingle($Objectname, $Conf);
 cObjGetSingle($conf['page'],$conf['page.'])


das heist es wird ein page object erzeugt und nur die unter
konfiguration von diesem page object wird dem object selbst mitgegeben.

das page object weiss dann das es weitere unter objecte erzeugen muss
anhand seiner configuration und wird dann das text object erzeugen.
es könnte aber genau so auch jedes andere object sein was im page object
auftaucht.


gleiches gilt für das typische TEMPLATE Object.

10 = TEMPLATE
10.template = FILE
10.template.file = fileadmin/template.html
10.workOnSubpart = bodypart
10.marks.myMarkerName = TEXT
10.marks.myMarkerName.value = irgend welcher text


wenn du dir nun mit diesem wissen das template object anschaust.

wirst du sehen das das template object.
ein FILE Object erzeugt welches dann dein file einließt.
es währe auch möglich anstatt des FILE objectes ein anderes object an
dessen stelle zu setzen. z.b den template automaker oder ein TEXT
object. (wobei das mit dem text object ziemlich unsinnig währe)

unf für die marks werden dann jeweils auch wieder eingene Content
Objecte erzeugt.....


die üblichen sachen wie

häufig verwendet man sachen wie

10 < styles.content.get
oder
20 < plugin.tx_someextensionkey_pi


das sagt eigendlich nix anderes also kopiere mir einen ast des arrays an
diese stelle.....

um sich diese dinge anzusehen empfehle ich dir einen blick in den
Typoscript Object Browser(TSOB) (im Template modul)

dadurch wird vieles verständlicher.


zu erwähnen ist noch das die äste styles.* und temp.* am ende gelöscht
werden (um speicher zu sparen da diese nur als temporäre ablage orte für
struckturen gedacht sind die man eventuell an vielen stellen braucht.

um sich diese ebenfalls anzusehen kannst du folgenden TS code einfügen

tempView < temp
sylesView < styles

besonders bei den styles ist es interessant um zu verstehen was hinter
styles.content.get
steckt.

um zu wissen was es an Typoscript Objecten gibt. würde ich dir das
durchlesen der TSref empfehlen.

http://typo3.org/documentation/document-library/references/doc_core_tsref/4.3.1/view/


gruss chris



- -- 
Christian Wolff // Berlin
http://www.connye.com

some projects:
http://richtermediagroup.com | http://titanic.de |
http://fairplay-homepage.de
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)

iEYEARECAAYFAkvwdNoACgkQIcCaXPh/JHGDFwCeMECNzPDkoFjZwq+9MAP5eDPa
EDwAn3foga0mW8C8VNHQKmMB6d6vRWUr
=h/EA
-----END PGP SIGNATURE-----


More information about the TYPO3-german mailing list