Benutzer-Werkzeuge

Webseiten-Werkzeuge


typo3:about:cobject

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
typo3:about:cobject [2014/03/25 20:30] – [FILE] admintypo3:about:cobject [2020/04/29 20:20] (aktuell) – [FILE] admin
Zeile 28: Zeile 28:
 ^Eigenschaft^Datentyp^Beschreibung^ ^Eigenschaft^Datentyp^Beschreibung^
 ^key|[[typo3:about:datentypen#string|string]] / stdWrap|Hier wird der Schlüsselbegriff ausgelesen. Üblicherweise werden die stdWrap-Eigenschaften verwendet, also z.B. ''key.data'' oder ''key.field''.| ^key|[[typo3:about:datentypen#string|string]] / stdWrap|Hier wird der Schlüsselbegriff ausgelesen. Üblicherweise werden die stdWrap-Eigenschaften verwendet, also z.B. ''key.data'' oder ''key.field''.|
-^[Schlüsselbegriffe]|cObject|Die erwarteten, möglichen Ergebnisse von ''key'' werden als Namen für cObjects verwendet. Hier kann also die gewünschte Ausgabe definiert werden.| +^[Schlüsselbegriffe]|[[typo3:about:datentypen#cobject|cObject]]|Die erwarteten, möglichen Ergebnisse von ''key'' werden als Namen für cObjects verwendet. Hier kann also die gewünschte Ausgabe definiert werden.| 
-^default|cObject|Dieses cObject wird verwendet, wenn die anderen aufgeführten Schlüsselbegriffe nicht mit dem Wert aus ''key'' übereinstimmen.|+^default|[[typo3:about:datentypen#cobject|cObject]]|Dieses cObject wird verwendet, wenn die anderen aufgeführten Schlüsselbegriffe nicht mit dem Wert aus ''key'' übereinstimmen.|
 ^if|[[typo3:about:functions:if|if]]|Identisch mit der stdWrap-Funktion ''if''. Wenn das Ergebnis //false// ist, wird das gesamte CASE-Objekt nicht gerendert.| ^if|[[typo3:about:functions:if|if]]|Identisch mit der stdWrap-Funktion ''if''. Wenn das Ergebnis //false// ist, wird das gesamte CASE-Objekt nicht gerendert.|
 ^setCurrent|[[typo3:about:datentypen#string|string]] / stdWrap|Ersetzt den aktuellen Wert des Elternelements durch den folgenden String.| ^setCurrent|[[typo3:about:datentypen#string|string]] / stdWrap|Ersetzt den aktuellen Wert des Elternelements durch den folgenden String.|
 ^stdWrap|stdWrap|Ermöglicht stdWrap-Funktionen für jedes Objekt, egal wie der key-Wert lautet.| ^stdWrap|stdWrap|Ermöglicht stdWrap-Funktionen für jedes Objekt, egal wie der key-Wert lautet.|
 +
 +Im folgenden Beispiel wird unter ''key'' der Benutzername abgefragt. Stimmt er mit //johndoe// überein, wird ein personalisierter Gruß ausgegeben, sonst mit ''default'' ein allgemeiner. Mit der ''if''-Abfrage wird geprüft, ob überhaupt ein Frontend-Benutzer eingeloggt ist. Ist das nicht der Fall, erfolgt auch keine Ausgabe (eine persönliche Ansprache ließe sich natürlich sinnvoller anlegen).
  
 <code typoscript> <code typoscript>
-####### Beispiel mit Integerwert und if ###############+10 = CASE 
 +10 { 
 +  key.data = TSFE:fe_user|user|username 
 +  if.isTrue.data = TSFE:fe_user|user|username 
 +  johndoe = TEXT 
 +  johndoe.value = Willkommen, John Doe! 
 +  default = TEXT 
 +  default.value = Willkommen! 
 +
 </code> </code>
  
Zeile 42: Zeile 53:
 ===== COA, COA_INT, COBJ_ARRAY ===== ===== COA, COA_INT, COBJ_ARRAY =====
  
-Steht für //Content Object Array//. Ermöglicht das Zusammenfassen mehrerer Inhaltselemente, um sie anschließend als eines zu behandeln. ''COA'' und ''COBJ_ARRAY'' sind einander identisch. Bei ''COA_INT'' wird der Inhalt nicht im Cache gespeichert.+Steht für //Content Object Array//. Ermöglicht das Zusammenfassen mehrerer Inhaltselemente, um sie anschließend als eines zu behandeln. ''COA'' und ''COBJ_ARRAY'' sind einander identisch (''COBJ_ARRAY'' wurde in TYPO3 7.4 entfernt). Bei ''COA_INT'' wird der Inhalt nicht im Cache gespeichert.
  
 ^Eigenschaft^Datentyp^Beschreibung^ ^Eigenschaft^Datentyp^Beschreibung^
Zeile 49: Zeile 60:
 ^wrap|wrap / stdWrap|Umschließt das gesamte COA.| ^wrap|wrap / stdWrap|Umschließt das gesamte COA.|
 ^stdWrap|stdWrap|Ermöglicht stdWrap-Funktionen für das COA.| ^stdWrap|stdWrap|Ermöglicht stdWrap-Funktionen für das COA.|
 +
 +Im ersten Beispiel würde der Seiteninhalt der Spalte ''0'' durch die ''if''-Abfrage nur eingeloggten Frontend-Benutzern zur Verfügung stehen (andere Vorgehensweisen sind sinnvoller!).
  
 <code typoscript> <code typoscript>
-############ Beispiel mit COA und if ###############+10 = COA 
 +10 { 
 +  if.isTrue.data = TSFE:fe_user|user|username 
 +  10 = TEXT 
 +  10.value = Willkommen! 
 +  10.wrap = <h1>|</h1> 
 +  20 < styles.content.get 
 +
 +</code> 
 + 
 +Das zweite Beispiel mit ''COA_INT'' ermöglicht die Ausgabe der aktuellen Uhrzeit zum Zeitpunkt des Seitenaufbaus. 
 + 
 +<code typoscript> 
 +10 = COA_INT 
 +10 { 
 +  10 = TEXT 
 +  10.data = date:H:i:
 +}
 </code> </code>
  
Zeile 65: Zeile 95:
 ^renderObj|cObject|Definiert die Ausgabe der Datensätze. Einzelne Felder können ausgelesen und die Ergebnisse mit stdWrap bearbeitet werden.\\ Wenn kein renderObj festgelegt wurde, setzt TYPO3 automatisch ''renderObj < [Tabellenname aus select]''. Damit werden die entsprechenden Angaben z.B. für //tt_content// aus ''css_styled_content'' ausgelesen. Wurde ''css_styled_content'' nicht inkludiert, erfolgt keine Datenausgabe im Frontend!| ^renderObj|cObject|Definiert die Ausgabe der Datensätze. Einzelne Felder können ausgelesen und die Ergebnisse mit stdWrap bearbeitet werden.\\ Wenn kein renderObj festgelegt wurde, setzt TYPO3 automatisch ''renderObj < [Tabellenname aus select]''. Damit werden die entsprechenden Angaben z.B. für //tt_content// aus ''css_styled_content'' ausgelesen. Wurde ''css_styled_content'' nicht inkludiert, erfolgt keine Datenausgabe im Frontend!|
 ^wrap|wrap|Umschließt die gesamte Ausgabe.| ^wrap|wrap|Umschließt die gesamte Ausgabe.|
-^stdWrap|stdWrap|Wird nach stdWrap ausgeführt.|+^stdWrap|stdWrap|Wird nach wrap ausgeführt.|
 ^slide|[[typo3:about:datentypen#integer|integer]] / stdWrap|Vererbung von Inhalt: Wenn durch ''select'' kein Inhaltselement gefunden wurde, kann hiermit entlang der rootline nach Inhalt auf anderen Seiten gesucht werden. Stoppt bei der ersten Seite mit Inhalt.\\ Mögliche Werte sind ''-1'' (bis zur root-Seite), ''1'' (nur die aktuelle Ebene) und ''2'' (eine Ebene höher). Nutze ''-1'' bei Kombination mit ''slide.collect''.| ^slide|[[typo3:about:datentypen#integer|integer]] / stdWrap|Vererbung von Inhalt: Wenn durch ''select'' kein Inhaltselement gefunden wurde, kann hiermit entlang der rootline nach Inhalt auf anderen Seiten gesucht werden. Stoppt bei der ersten Seite mit Inhalt.\\ Mögliche Werte sind ''-1'' (bis zur root-Seite), ''1'' (nur die aktuelle Ebene) und ''2'' (eine Ebene höher). Nutze ''-1'' bei Kombination mit ''slide.collect''.|
 ^slide.collect|[[typo3:about:datentypen#integer|integer]] / stdWrap|Kann zusätzlich zu ''.slide'' verwendet werden, um alle gefundenen Inhaltselemente auf der aktuellen Seite sowie der übergeordneten Seiten auszugeben.\\ Mögliche Werte sind ''-1'' (bis zur root-Seite) und ein positiver Wert, der die Anzahl der zu durchsuchenden Ebenen angibt.| ^slide.collect|[[typo3:about:datentypen#integer|integer]] / stdWrap|Kann zusätzlich zu ''.slide'' verwendet werden, um alle gefundenen Inhaltselemente auf der aktuellen Seite sowie der übergeordneten Seiten auszugeben.\\ Mögliche Werte sind ''-1'' (bis zur root-Seite) und ein positiver Wert, der die Anzahl der zu durchsuchenden Ebenen angibt.|
Zeile 79: Zeile 109:
     orderBy = sorting     orderBy = sorting
     where = colPos=0     where = colPos=0
 +    select.languageField = sys_language_uid
   }   }
   renderObj = COA   renderObj = COA
Zeile 102: Zeile 133:
  
 Mit ''FILE'' wird der __Inhalt__ von Dateien eingebunden, es ist daher nicht zu verwechseln mit ''filelink''. Ein Bild würde ein //img//-Element als Wrap erhalten, die Ausgabe wäre dann identisch mit dem cObject ''IMAGE''. Sinnvoll ist eine Verwendung z.B. von HTML-Dokumenten. Mit ''FILE'' wird der __Inhalt__ von Dateien eingebunden, es ist daher nicht zu verwechseln mit ''filelink''. Ein Bild würde ein //img//-Element als Wrap erhalten, die Ausgabe wäre dann identisch mit dem cObject ''IMAGE''. Sinnvoll ist eine Verwendung z.B. von HTML-Dokumenten.
 +
 +<WRAP center round important>
 +''FILE'' wurde in TYPO3 v9 [[https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/9.5/Deprecation-85970-FileContentObject.html|als deprecated erklärt]] und mit TYPO3 v10 entfernt! Für Bilder kann weiter das cObject ''IMAGE'' (oder ein Fluid-Viewhelper) verwendet werden. Als Alternative zu Textdokumenten kann ggf. FLUIDTEMPLATE verwendet werden.
 +</WRAP>
 +
  
 ^Eigenschaft^Datentyp^Beschreibung^ ^Eigenschaft^Datentyp^Beschreibung^
Zeile 315: Zeile 351:
 10.source = tt_content_5,22,pages_language_overlay_10 10.source = tt_content_5,22,pages_language_overlay_10
 </code>| </code>|
-^categories|//Liste von Kategorien//|Seit TYPO3 CMS 6.0###############################|+^categories|//Liste von Kategorien//|Seit TYPO3 CMS 6.0|
 ^dontCheckPid|boolean|Wenn aktiviert, werden auch Einträge auf nicht erreichbaren Seiten angezeigt. Eine Verlinkung mit ''typolink'' schlägt aber weiterhin fehl.| ^dontCheckPid|boolean|Wenn aktiviert, werden auch Einträge auf nicht erreichbaren Seiten angezeigt. Eine Verlinkung mit ''typolink'' schlägt aber weiterhin fehl.|
 ^conf.[Tabelle]|cObject|Hiermit wird das Rendering für die Ausgabe im Frontend gesteuert. Fehlt diese Angabe, wird das Top Level Object mit diesem Tabellennamen verwendet. Bei //css_styled_content// wird //tt_content// als CASE-Objekt angelegt, die Ausgabe erfolgt dann je nach CType.\\ Fehlt auch ein TLO, erfolgt keine Ausgabe! <code typoscript> ^conf.[Tabelle]|cObject|Hiermit wird das Rendering für die Ausgabe im Frontend gesteuert. Fehlt diese Angabe, wird das Top Level Object mit diesem Tabellennamen verwendet. Bei //css_styled_content// wird //tt_content// als CASE-Objekt angelegt, die Ausgabe erfolgt dann je nach CType.\\ Fehlt auch ein TLO, erfolgt keine Ausgabe! <code typoscript>
Zeile 330: Zeile 366:
 ^stdWrap|stdWrap|Wird nach ''wrap'' ausgeführt.|  ^stdWrap|stdWrap|Wird nach ''wrap'' ausgeführt.| 
  
-Das folgende Beispiel liest die Datensätze **5** und **22** aus //tt_content// sowie den Datensatz **10** aus //pages_language_overlay// aus und gibt deren Header bzw. Title in einer Liste aus. Die Header aus //tt_content// werden zudem verlinkt mit deren PID und einer Sprungmarke zum jeweiligen Inhaltselement. +Mit dem folgenden Beispiel wird ein einzelnes Inhaltselement geladen, mit dem Standard-Rendering der angegebenen Tabelle.
 <code typoscript> <code typoscript>
 10 = RECORDS 10 = RECORDS
 10 { 10 {
 +  tables = tt_content
 +  source = 28
 +}
 +</code>
 +
 +Das folgende Beispiel liest die Datensätze **5** und **22** aus //tt_content// sowie den Datensatz **10** aus //pages_language_overlay// aus und gibt deren Header bzw. Title in einer Liste aus. Die Header aus //tt_content// werden zudem verlinkt mit deren PID und einer Sprungmarke zum jeweiligen Inhaltselement.
 +
 +<code typoscript>
 +20 = RECORDS
 +20 {
   source = ,tt_content_5, 22, pages_language_overlay_10   source = ,tt_content_5, 22, pages_language_overlay_10
   tables = ,tt_content, pages_language_overlay   tables = ,tt_content, pages_language_overlay
typo3/about/cobject.1395775802.txt.gz · Zuletzt geändert: 2015/12/03 19:29 (Externe Bearbeitung)