Typo3 - Baukasten

Aus Wikizone
Wechseln zu: Navigation, Suche

Auf Daten zugreifen

Typo3 - stdWrap

Die stdWrap Eigenschaft steht vielen Objekten zur Verfügung. Wenn Sie vorhanden ist ist Sie der Problemlöser für fast alle Probleme :-).


Typo3 - TSFE

Typo3 - Das Media Feld

Standardeinstellungen

Typo3 - Standardeinstellungen

Navigation

Bilder Menü

siehe: Typo3 - Bildermenü

Einfaches Menü mit 1 Ebene (CSS)

siehe: Menue als CSS formatierte Liste

Menü mit 2 Ebenen als verschachtelte Liste

Dieses Menü ist besonders für vertikale Navigationen geeignet

Constants

# Einstieg Level 1
navi-L12-startID = 1
navi-L12-delimiter =   |  
navi-L12-delimiter =

Setup

### Top Navigation ###
temp.navi-L12 = HMENU
temp.navi-L12 {
  #stdWrap.case = lower
  special = directory
  # Seitenid für den Einstieg
  special.value = {$navi-L12-startID}
  # Ebene für den Einstieg (nicht vergessen wg. 2. Level)
  entryLevel = 1
  1 = TMENU
  1{
    noBlur = 1
    wrap = <ul>|</ul>
    NO = 1
    NO.linkWrap = |*| <li>|{$navi-L12-delimiter}</li> |*| <li>|</li>
    ACT = 1
    ACT.linkWrap =  |*| <li class="on">|{$navi-L12-delimiter}</li> |*| <li class="on">|</li>
    ACTIFSUB = 1
    #Wenn Unterpunkte dann li aufmachen
    ACTIFSUB.linkWrap = <li class="on">|
  }
  2 = TMENU
  2{
   noBlur = 1
   NO = 1
   #Unterpunkt also neue ul und danach li zu (von L1 geöffnet)
   wrap = <ul>|</ul></li>
   NO.linkWrap = |*| <li>|{$navi-L12-delimiter}</li> |*| <li>|</li>
   ACT = 1
   ACT.linkWrap =  |*| <li class="on">|{$navi-L12-delimiter}</li> |*| <li class="on">|</li>

  #ACTIFSUB = 1
  #ACTIFSUB.linkWrap = <li class="on">|</li>
  }
}

Menü mit 2 Ebenen als separate Listen

Dieses Menü ist besonders für horizontale Navigationen geeignet. Da die 2. Ebene relativ angegeben wird muß man bei mehreren Navigationsbäumen aufpassen, daß evt. ein Untermenü einer anderen Navigation (anderer Baum) ebenfalls angezeigt wird. Das läßt sich z.B. umgehen in dem man das Navitemplate erst im Unterbaum setzt oder indem man im Hauptbaum eine Bedingung setzt ([PIDinRootline = 123])

Ebene 1 ist im Prinzip eine einfache Liste: Constants

# Navi nur Level1
#Startpunkt
navi_startID = 1

#Trennzeichen für horizontale Navi:
naviL1-delimiter =   |  

Setup

### Top Navigation ###
temp.naviL1 = HMENU
temp.naviL1 {
  #stdWrap.case = lower
  special = directory
  # Seitenid für den Einstieg
  special.value = {$navi_startID}
  1 = TMENU
  1.noBlur = 1
  1.wrap = <ul>|</ul>
  1.NO = 1
  1.NO.linkWrap = |*| <li>|{$naviL1-delimiter}</li> |*| <li>|</li>
  1.ACT = 1
  1.ACT.linkWrap =  |*| <li class="on">|{$naviL1-delimiter}</li> |*| <li class="on">|</li>
  #1.ACTIFSUB = 1
  #1.ACTIFSUB.linkWrap = <li class="on">|</li>
}

Für Ebene 2 wird eine weitere Liste generiert wenn man sich in einem bestimmten Level befindet: Constants

# Navigation nur ab Level x  als ul (Standard entry Level1=2.Level)

#Trennzeichen für horizontale Navi:
naviLx-delimiter =   |  
naviLx-entryLevel = 1

Setup

temp.naviLx = HMENU
temp.naviLx {
  # Seitenbaumebene ab Level 1 darstellen (2. Ebene)
   entryLevel = {$naviLx-entryLevel}
# Level 2
   1 = TMENU
   1{
      noBlur = 1
      wrap = <ul>|</ul>
      NO = 1
   # Für horizontale Navi mit delimiter bei vertikal einfach nichts setzen
      NO.linkWrap = |*| <li>|{$naviLx-delimiter}</li> |*| <li>|</li>

      ACT = 1
   # Für vertikale Navi ohne delimiter...      
      #ACT.linkWrap = <li class="on">|</li>
   # und horizontal mit delimiter
      ACT.linkWrap =  |*| <li class="on">|{$naviLx-delimiter}</li> |*| <li class="on">|</li>    

      #ACTIFSUB = 1
      #ACTIFSUB.linkWrap = <li class="on">|
   }
}


Menü als CSS formatierte Liste (allgemein)

Menue als CSS formatierte Liste

CSS-Flyout Menü

Typo3 - CSS-Flyout Menü

Extensions

News - Modul

Hier gibt es fertige Konfigurationen: News (tt_news)

eCards - sr_sendcard

# The Fast Way:
# plugin.tx_srsendcard_pi1._CSS_DEFAULT_STYLE = @import url("fileadmin/dinos/templates/css/srsendcard.css");
# But better is this (more flexible lesser Overhead)

plugin.tx_srsendcard_pi1._CSS_DEFAULT_STYLE >

[PIDinRootline = 14]
page.includeCSS.file2 = fileadmin/dinos/templates/srsendcard/srsendcard.css
[global]

plugin.tx_srsendcard_pi1{

templateFile = fileadmin/dinos/templates/srsendcard/srsendcard.tmpl
locale_all = de_DE
oldYear = 2006
# Vorschauseite (wenn gewünscht)
# previewPID = your_page_id
enableHTMLMail = 1
siteEmail = info@start-reutlingen.de
siteName = Erben der Dinos
# musicDir = EXT:sr_sendcard/music
#cardMusicFiles = autumnleaves.mid, OverTheRainbow.mid, Pomp_and_Circumstance.mid
disableMusic = 1
maxCol = 2
imageSmallWidth = 150
imageSmallHeight = 150
imageBigWidth = 300
imageBigHeight = 300
#logo
#logoAlignHor = right
#logoAlignVert = bottom
#useAlternateImageOnPrint
### For use with other pids use this one too
#createPID
#formPID
#previewPID
#useCAPTCHA = 0
#viewPID
#printPID
### Erscheinungsbild ###
cardStamp = fileadmin/dinos/templates/srsendcard/stamp.gif
#date_stdWrap
disableSendDate = 1
cardBgcolors = #FFFFFF,#A00A1C,#FF993F
cardFontcolors = #000000, #FFFFFF,#A00A1C
#disableFontcolors
#disableFontfaces
#disableCardOptions
#graphicMess
#graphicMessWidth
#graphicMessFontFiles
#graphicMessFontSizes
#fontDir
#doNotShowCardCaptions
cardPresentationOrder = manual
salutation = informal
#disableBgcolors = 1
}

Zufallsbild tx_ccrandomimage

TypoScript - Setup

### zufallsbild erzeugen ###
includeLibs.tx_ccrandomimage = EXT:cc_random_image/pi1/class.tx_ccrandomimage_pi1.php

// USER_INT means 'no caching'
temp.randomImage = USER_INT
temp.randomImage{
  userFunc = tx_ccrandomimage_pi1->main
  path = fileadmin/randomImage/
  fileExt = jpg,jpeg,gif,png
  #Das Render Objekt ist ein content object array (COA) mit einem Bild
  #Vor dem Rendern werden die ###FILE_x### marker mit den Bildern aus path ersetzt
  renderObj = COA
  renderObj {
    10 = IMAGE
    10.file = ###FILE_1###
    // ... weitere Bilder wenn benötigt
  }
}

Nützliche TS-Templates

Bild aus Media-Feld auslesen

temp.mediaFieldImage=IMAGE
temp.mediaFieldImage.file {  
  import.data = levelmedia: 2,slide  
  import = uploads/media/  
  import.listNum = 0  
  #width = 270  
  #height= 300
}

Logo mit Verlinkung auf die Homepage (1.2)

Constants

# Link für das Logo
# Zahl (Seiten-ID), URL (www.zielseite.de) oder Email-Adresse
logoLink = 1
logoFile = fileadmin/templates/images/logo.gif

Setup

# Fügt ein Logo mit Link ein

temp.logo = IMAGE
temp.logo {
   #file = /fileadmin/dinos/templates/main/images/logo-rt.gif
   file = {$logoFile}
   stdWrap.typolink.parameter = {$logoLink}
}