Typo3 - TypoScript: Unterschied zwischen den Versionen
| (6 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== Interne Links == | == Interne Links == | ||
| + | [[Typo3 - Baukasten]] | ||
| + | |||
| + | [[Typo3 - Tipps und Tricks]] | ||
[[TypoScript - Referenz]] | [[TypoScript - Referenz]] | ||
[TypoScript Referenz von Typo3.net] | [TypoScript Referenz von Typo3.net] | ||
| + | |||
| + | [[TypoScript - Daten auslesen]] | ||
[[TypoScript - globale Variablen]] | [[TypoScript - globale Variablen]] | ||
[[TypoScript - Errors and warnings im Object Browser]] | [[TypoScript - Errors and warnings im Object Browser]] | ||
| + | |||
| + | [[TypoScript - Content Objekte (cObjects)]] | ||
| + | |||
| + | [[TypoScript - Top-Level-Objekte (TLO)]] | ||
== Zusammenhang zwischen Constants, Setup, Extension == | == Zusammenhang zwischen Constants, Setup, Extension == | ||
| Zeile 15: | Zeile 24: | ||
In Typoscript Constants | In Typoscript Constants | ||
| − | + | <syntaxhighlight lang="typoscript"> | |
#cat=ho_Test; type=string; label=Mein Text | #cat=ho_Test; type=string; label=Mein Text | ||
ho_Test.Text1 = Das ist ein Test | ho_Test.Text1 = Das ist ein Test | ||
| + | </syntaxhighlight> | ||
In Typoscript Setup | In Typoscript Setup | ||
| + | <syntaxhighlight lang="typoscript"> | ||
| + | plugin.tx_hoTest_pi1.test1 = {$ho_Test.Text1} | ||
| + | </syntaxhighlight> | ||
| + | In der Extension in Datei ho_Test/pi1/class.tx_hoTest_pi1.php | ||
| + | <syntaxhighlight lang="typoscript"> | ||
| + | $Ergebnis=$conf['test1']; | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | == lib und temp Objekte == | ||
| + | Aus typo3weblog.de (Adventskalender 2008) | ||
| + | |||
| + | Erst vor wenigen Tagen habe ich einem Kollegen erklärt, worin eigentlich der Unterschied zwischen Objekten besteht, die mit temp. und lib. beginnen. | ||
| + | |||
| + | Dazu mal ein Beispiel TypoScript: | ||
| + | |||
| + | temp.meinObject = TEXT | ||
| + | temp.meinObject.value = Text1 | ||
| + | |||
| + | lib.meinObject = TEXT | ||
| + | lib.meinObject.value = Text2 | ||
| + | |||
| + | Bis hierhin gibt es keinen großen Unterschied, wir haben zwei Objekte, welche einen Text enthalten. Was passiert jedoch, wenn wir diese beiden Objekte nun als Referenz an einer anderen Stelle verwenden wollen: | ||
| − | + | page = PAGE | |
| + | page.10 <= temp.meinObject | ||
| + | page.20 <= lib.meinObject | ||
| − | + | Hier zeigt sich, dass lediglich page.20 mit dem Text befüllt wird. Aber warum ist das so? Das ist sehr schnell und einfach erklärt. Objekte die mit temp. eingeleitet werden, werden nicht gecached. Wie der Prefix es selbst schon aussagt, es sind temporäre Objekte. Alles was hingeben mit lib. beginnt kann auch bei einer Referenz verwendet werden. | |
| − | + | Arbeitet man nicht mit dem Referenz-Operator (<=) sondern mit dem Kopier-Operator (<), spielt es keine Rolle ob man temp. oder lib. verwenden. | |
Aktuelle Version vom 29. April 2015, 12:21 Uhr
Interne Links[Bearbeiten]
[TypoScript Referenz von Typo3.net]
TypoScript - globale Variablen
TypoScript - Errors and warnings im Object Browser
TypoScript - Content Objekte (cObjects)
TypoScript - Top-Level-Objekte (TLO)
Zusammenhang zwischen Constants, Setup, Extension[Bearbeiten]
Hier wird anhand eines kleinen Beispiels erläutert, wie man Konstanten im Setup verwendet und in der Extension als Variable weiterverwerbeitet.
In Typoscript Constants
#cat=ho_Test; type=string; label=Mein Text
ho_Test.Text1 = Das ist ein Test
In Typoscript Setup
plugin.tx_hoTest_pi1.test1 = {$ho_Test.Text1}
In der Extension in Datei ho_Test/pi1/class.tx_hoTest_pi1.php
$Ergebnis=$conf['test1'];
lib und temp Objekte[Bearbeiten]
Aus typo3weblog.de (Adventskalender 2008)
Erst vor wenigen Tagen habe ich einem Kollegen erklärt, worin eigentlich der Unterschied zwischen Objekten besteht, die mit temp. und lib. beginnen.
Dazu mal ein Beispiel TypoScript:
temp.meinObject = TEXT temp.meinObject.value = Text1 lib.meinObject = TEXT lib.meinObject.value = Text2
Bis hierhin gibt es keinen großen Unterschied, wir haben zwei Objekte, welche einen Text enthalten. Was passiert jedoch, wenn wir diese beiden Objekte nun als Referenz an einer anderen Stelle verwenden wollen:
page = PAGE page.10 <= temp.meinObject page.20 <= lib.meinObject
Hier zeigt sich, dass lediglich page.20 mit dem Text befüllt wird. Aber warum ist das so? Das ist sehr schnell und einfach erklärt. Objekte die mit temp. eingeleitet werden, werden nicht gecached. Wie der Prefix es selbst schon aussagt, es sind temporäre Objekte. Alles was hingeben mit lib. beginnt kann auch bei einer Referenz verwendet werden.
Arbeitet man nicht mit dem Referenz-Operator (<=) sondern mit dem Kopier-Operator (<), spielt es keine Rolle ob man temp. oder lib. verwenden.