Blog-Kategorien
Hat Ihnen dieser Beitrag gefallen?

t3n Social News ist ein offenes News- und Link-Portal rund um die Themenbereiche Open Source, Web 2.0, Webentwicklung, Apple, Linux und TYPO3.

Gefällt Ihnen diese Seite? Dann teilen Sie das doch gleich ihren Facebook-Freunden mit.
Rubrik: Tutorial
TypoScript aus FCE (Flexible Content Element) auslagern
Auslagern von TypoScipt hat viele Vorteile. So lässt sich geschriebener Code einfacher mehrmals verwenden und lässt sich an zentraler Stelle mit einem Editor pflegen.
Um diesen Vorteil auch in einem FCE nutzen zu können braucht es nur ganz wenig Code.
Erstellt man ein neues Content-Element wird von TemplaVoilà automatisch die Datenstruktur (DS) angelegt. Diese könnte so aussehen:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
<T3DataStructure>
<meta type="array">
<langDisable>1</langDisable>
</meta>
<ROOT type="array">
<tx_templavoila type="array">
<title>ROOT</title>
<description>Select the HTML element on the page which you want to be the overall container element for the template.</description>
</tx_templavoila>
<type>array</type>
<el type="array">
<field_image type="array">
<tx_templavoila type="array">
<title>Images</title>
<sample_data type="array">
<numIndex index="0">Bilder</numIndex>
</sample_data>
<eType>image</eType>
<TypoScript>
10 = IMAGE
10.file.import = uploads/tx_templavoila/
10.file.import.current = 1
10.file.import.listNum = 0
10.file.maxW = 200
</TypoScript>
</tx_templavoila>
<TCEforms type="array">
<config type="array">
<type>group</type>
<internal_type>file</internal_type>
<allowed>gif,png,jpg,jpeg</allowed>
<max_size>1000</max_size>
<uploadfolder>uploads/tx_templavoila</uploadfolder>
<show_thumbs>1</show_thumbs>
<size>1</size>
<maxitems>1</maxitems>
<minitems>0</minitems>
</config>
<label>Images</label>
</TCEforms>
</field_image>
</el>
</ROOT>
</T3DataStructure>
Mit disem Element kann man ein Bild hochladen, dass dann mittels GIFBUILDER verändert werden soll. Diese ganze TypoScipt-Anweisung werden wir nun auslagern.
Wichtig dafür nur folgender Bereich im XML-File:
<TypoScript>
10 = IMAGE
10.file.import = uploads/tx_templavoila/
10.file.import.current = 1
10.file.import.listNum = 0
10.file.maxW = 200
</TypoScript>
Für diesen Bereich definieren wir eine in TemplaVoilà gängige "lib.xyz". Diese können wir dan ganz normal im Seiten-Template (meistens auf der Root-Seite) ansprechen.
Aber alles der Reihe nach.
Wir löschen also obigen Bereich, und ersetzen ihn mit folgendem:
<TypoScriptObjPath>lib.ce.ds.anhaenger2</TypoScriptObjPath>
Ist das DS so angepasst worden, kann sämtlicher TypoScript-Code der entsprechenden "lib.xyz" übergeben werden.
Dieser Code kann sowohl im Seiten-Template (meistens auf der Root-Seite) sein, oder an selbiger Stelle noch in ein File ausgelagert werden.
Wird der Code in ein Seiten-Template geschrieben, sieht das so aus:
temp.ce.ds.anhaenger = IMAGE
temp.ce.ds.anhaenger.file = GIFBUILDER
temp.ce.ds.anhaenger.file {
XY = 224,400
format = jpg
quality = 100
10 = IMAGE
10 {
file=fileadmin/templates/images/main/schild_vert.png
file.offset = 0,0
}
20 = IMAGE
20{
file.import = uploads/tx_templavoila/
file.import.current = 1
file.import.listNum = 0
file.maxW = 155
offset = 10,70
}
40 = EFFECT
40.value = rotate=12|sharpen=20
}
lib.ce.ds.anhaenger < temp.ce.ds.anhaenger
Oder was ich bevorzuge: Diesen TypoScipt vode in ein File schreiben, und in der Root-Seite lediglich referenzieren mittels
# CE
#------------------------------------------------------------------
<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/ts/lib.ce.ds.anhaenger.ts">
- Links:
- www.typo3.net|http://www.typo3.net
Kommentare
Blog Netiquette
Dieses Blog ist eine offene Dialog-Plattform, auf der Mitarbeiter von GreenBanana Beiträge veröffentlichen.
Umgangston im Blog vom GreenBanana
- Behandeln Sie andere hier im Blog immer so, wie Sie selbst behandelt werden möchten.
- Jeder hat eine eigene Meinung und das Recht seine Meinung hier kundzutun. Sachliche Diskussionen, auch eine gesunde Streitkultur ist bei kritischen Themen wünschenswert. «Hart, aber fair», lautet die Devise hier im Blog.
- In diesem Blog haben persönliche Angriffe, übertriebener Sarkasmus, Beleidigungen oder Beschimpfungen nichts zu suchen.
- Die Blog-Kommentarfunktion soll somit eine sachliche Diskussion ermöglichen. Um dies zu gewährleisten, behalten wir uns auch vor, Kommentare zu löschen, die einer Diskussion nicht dienlich sind und die sich nicht auf die Beiträge beziehen. Es besteht kein Anspruch auf Veröffentlichung.
Wir löschen bzw. sperren Kommentare bei:
- Aufforderungen zu Gewalt gegen Personen, Institutionen oder Unternehmen
- Pornografie
- Missbrauch als Werbefläche für Webseiten oder Dienste
- Rassismus und Hasspropaganda
- Beleidigungen, Verletzungen, persönliche Angriffe oder Entwürdigungen von Personen oder Firmen in jeglicher Form.
- Aufruf zu Demonstrationen und Kundgebungen jeglicher politischer Richtung
- Kommentare, die sich nicht auf den kommentierten Beitrag beziehen
Ausschlussklausel für Haftung
Die Kommentare zu unseren Beiträgen spiegeln allein die Meinung einzelner Leser wider. Für die Richtigkeit und Vollständigkeit der Inhalte übernimmt GreenBanana keinerlei Gewähr.


