Kurze Typo3-Dokumentation

Typo3Lösungen

Typo3/FORUM

<!>

Die alte Seite Typo3Lösungen/FürTypoScript wird bald verschwinden (der kurze Seitentitel sieht als URL einfach besser aus) --DanielBrüßler

Die Beispiele hier richten sich eher an Typo-Script-Newbees. Es sind grundsätzlich selbst getestete Beispiele!

Browsercheck - ob Internet Explorer, Netscape

Beschreibung: Bedingung soll über die eckigen Klammern geprüft werden.

Das Code-Schnipsel:

  #- wenn Netscape ("browser" darf nicht groß geschrieben sein!, Leerzeichen sind egal)
  [browser = netscape]
  page.60 = TEXT
  page.60.value = Netscape
  [global]

Datum in deutsch einfügen - per DesignTemplate

Beschreibung: Fügt das aktuelle Datum in deutscher Sprache ein. Und zwar über eine Designvorlage (="Design-Template"). Allerdings kann config.locale_all nur verwendet werden, wenn man etwas umstellt siehe hier. (Anmerkung: Umstellung nur notwendig bei Typo3 Version bis einschl. 3.5.0 und Verwendung von PHP Version 4.3.x. In der Version 3.6.0 wurden die Änderungen bereits berücksichtigt)

Das Code-Schnipsel:

# -Defaultsprache auf Deutsch stellen
# NICHT nötig, wenn Extension "ts_language_de" installiert ist !
config.sys_language_uid = 0 
config.language = de 
config.locale_all = de_DE 

# -Text anlegen
temp.datum = TEXT
temp.datum.data = date: U
temp.datum.strftime = %A, %e. %B %Y

# fuege das Datum an der richtigen Stelle im Template ein
page = PAGE
page {
  typeNum = 0
  20 = TEMPLATE
  20.template = FILE
  20.template.file = fileadmin/designvorlage.html
  20.workOnSubpart = DOKUMENT

  20.marks.INHALT < styles.content.get

  20.marks.DATUM < temp.datum
}

Ein passendes Design-Template wäre:

<!-- ###DOKUMENT### begin -->
###INHALT###<br>
<i>###DATUM###</i>
<!-- ###DOKUMENT### begin -->

Autor: DanielBrüßler

Forum - Als Absender automatisch den User-Namen verwenden

http://www.typo3.net/viewtopic.php?t=2701&highlight=mailform

Suche (standard oder indexed_search)

Typo3Suche

Sprache - Einstellung des Users anzeigen

Das Code-Schnipsel:

page.50 = TEXT
page.50.data = getenv : HTTP_ACCEPT_LANGUAGE

Autor: DanielBrüßler

Für mehr Überblick - COBJ_ARRAY

Beschreibung: Gerade bei besonders dynamischen Seiten wird der Typo-Script-Code sehr lang - und dann ist das Auslagern praktisch um den Überblick nicht zu verlieren

Das Code-Schnipsel:

temp.ausgelagert = COBJ_ARRAY 
temp.ausgelagert { 
  wrap =  | 

    10 = TEXT 
    10.value = Info 1 

    20 = TEXT 
    20.value = Info 2
}

page.60 < temp.ausgelagert

Autor: DanielBrüßler

Für mehr Überblick - TypoScript als eigene Datei

Beschreibung: Auslagern hilft doppelt: Besserer Überblick und höhere Chance auf Wiederverwendbarkeit. Beispiel für die Site "financescout".

Soweit möglich gleich an den Anfang der Seite stellen. Nur aufpassen, dass die ".typeNum=0" - Angabe vorher gesetzt ist.

Am sinnvollsten ist es, diese ausgelagerten Komponenten als  COBJ_ARRAY  aufzubauen, denn dann kann diese im Haupt-Template einfach über (zum Beispiel)  page.80 < meineKomponente  eingebunden werden ;-)

Das Code-Schnipsel:

<INCLUDE_TYPOSCRIPT: source="FILE: fileadmin/media/scripts/typoscript_fin.txt">

Autor: DanielBrüßler

TEXT und HTML

Beschreibung: Anzeigen von einfachen Texten. Ein paar Basics für den Anfang.

Das Code-Schnipsel:

#- OK: Text. Siehe Doku ( TSref - 5.0.1 - stdWrap )
page.720 = TEXT
page.720 {
  value = Der Inhalt
}


#- OK: Text mit Wrap
page.720 = TEXT
page.720 {
  value = Der Inhalt
  wrap = <b> | </b>
}


#- OK: Text in Großbuchstaben
page.720 = TEXT
page.720 {
  value = Der Inhalt
  value.case = upper
}

Autor: DanielBrüßler

Beschreibung: Manche Dinge sollen nur in einer bestimmten Ebene sichtbar sein. Dafür braucht es einen Vergleich.

Das Code-Schnipsel:

// mit eckigen Klammern:
[treeLevel = 0]
page.20 = TEXT
page.20.value = Nur auf root-Ebene zu sehen
[end]

// mit if:
page.20 = TEXT
page.20.value = Nur auf root-Ebene zu sehen
page.20.if.value.data = level : 1
page.20.if.equals = 0

// aktuelle Ebene anzeigen - Zahl hinter level ist egal aber muss vorhanden sein !
page.30 = TEXT
page.30.data = level : 1

Beschreibung: Mit Hilfe von  excludeUidList  kann man einzelne Seiten aus dem Menü ausblenden, die aber trotzdem in der Sitemap vorhanden sind. Im Beispiel werden die Seiten 418 und 422 ausgeblendet.

Das Code-Schnipsel:

subparts.MENU.excludeUidList = 418, 422

Autor: sartre

( Quelle: http://www.typo3forum.de/viewtopic.php?t=838 )

Muster - Muster

Beschreibung: Mustertext

Das Code-Schnipsel:

Mustercode

Autor: Musterautor

Muster - Muster

Beschreibung: Mustertext

Das Code-Schnipsel:

Mustercode

Autor: Musterautor

Typo3TypoScript (zuletzt geändert am 2007-12-23 22:47:52 durch localhost)