Schnellnavigation:

Kategorien

« März 2024»
S M T W T F S
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

Letzte Nachrichten

DSGVO
26.05.2018 18:39
Trackingtools und Datenschutzerklärung
14.03.2014 23:07
1:n und n:1 Relationen in Extbase
06.12.2013 12:04
Erste Abmahnungen wegen Google Analytics
04.10.2013 12:11

Kopieren Sie diesen Link in Ihren RSS-Reader

RSS 0.91Nachrichten
RSS 2.0Nachrichten

In eigener Sache

Peter Linzenkirchner, Lisardo EDV Beratung in Augsburg. Freelance und Partner für Design- und Webagenturen in Augsburg und München. Pixelgenaue Templates, valides HTML, barrierearm. TYPO3-Projekte, Extension-Programmierung und mehr ... 

Zur Zeit wird gefiltert nach: typoscript
Filter zurücksetzen

Man kann den Like-Button von Facebook problemlos mit Typoscript auf jeder Seite einbinden. Zu beachten ist natürlich, dass immer die aktuelle Seite als Link übergeben werden muss. 

  1. lib.likebutton = COA
  2. lib.likebutton {
  3.   10 = TEXT
  4.   # aktuelle Seite
  5.   10.typolink.parameter.data = TSFE:id
  6.   # nur die URL
  7.   10.typolink.returnLast = url
  8.   # die BaseURL (muss definiert sein)
  9.   10.dataWrap = {TSFE:baseUrl}|
  10.   # URL.kodiert.
  11.     10.rawUrlEncode = 1
  12.   # und der eigentliche Inhalt
  13.   wrap = <iframe style="border:none; overflow:hidden; width:450px; height:80px;" frameborder="0" scrolling="no" src="http://www.facebook.com/plugins/like.php?href=|&layout=standard&show_faces=true&width=450&action=like&font=arial&colorscheme=light&height=80"></iframe>
  14. }

Weiterführende Links: 

Es ist durchaus möglich, nur mit TypoScript neue Contentelemente anzulegen, allerdings ohne Zugriff auf die Datenfelder. Damit kann zum Einen statischer Inhalt ausgegeben werden, zum Anderen ist es natürlich auch möglich, das gesamte Spektrum von TypoScript einzusetzen. So können speziell angepasste Menüs oder Datenbankinhalte ausgegeben werden. Allerdings kann der Redakteur die Inhalte nicht erstellen – er kann sie nur am gewünschten Platz aufrufen bzw. einsetzen.


[mehr]

Man kann eigene Konstanten definieren und diese im TypoScript-Template verwenden. Zuerst die Konstante definieren (in der Kategorie Constants im TypoScript-Template):

  1. # neue Konstante
  2. test.konstante1=4

Auf diese Konstante kann im TypoScript so zugegriffen werden:

  1. page.20=TEXT
  2. page.20.value={$test.konstante1}

Man muss also die Konstante mit geschweiften Klammern umgeben und ein Dollarzeichen davor setzen.

Diese Konstanten können auch über den Constant-Editor verwaltet werden. Dazu muss allerdings direkt oberhalt der Definition der Konstante ein Kommentar eingetragen werden, der die Konstante in den Constant-Editor aufnimmt:

  1. # cat=Grundeinstellungen//; type=int+; label=Navigations-ID: Geben Sie eine ID ein. Der Text kann auch deutlich länger sein.
  2. test.konstante1=4

Die Syntax:

  1. # cat=[Kategorie]/[Subkategorie]/[Position]; type=[Feldtyp]; label=[Titel]:[Beschreibung]
  2. test.konstante1=4

Es gibt mehrere Möglichkeiten, ein Menü für verschiedene Benutzer oder Benutzergruppen unterschiedlich zu gestalten.

Unterscheidung mit if

  1. temp.nav_main=HMENU
  2. temp.nav_main {
  3.   special=directory
  4.   special.value=3
  5.   entryLevel=1
  6.   1=TMENU
  7.   1 {
  8.     noBlur=1
  9.     wrap= <divclass="navi"><ul>|</ul></div>
  10.     NO=1
  11.     NO.ATagTitle.field=abstract// description // title
  12.     NO.linkWrap= <li>|</li>
  13.     NO.stdWrap.htmlSpecialChars=1
  14.     NO.ATagParams= class="intern"
  15.  
  16.     #################################################
  17.     # andere Anzeige für die internen Seiten.
  18.  
  19.     NO.ATagParams.if{
  20.         value=0
  21.         isGreaterThan.field=fe_group
  22.     }
  23.    
  24.     ACT< .NO
  25.     ACT.linkWrap= <liclass="aktiv">|
  26.    
  27.   }
  28. }

Hier interessiert vor allem die zusätzliche Zuweisung einer besonderen Klasse in einige Menpunkte, die Seiten betreffen, die nur für Frontend User zugänglich sind:

  1. #################################################
  2. # andere Anzeige für die internen Seiten.
  3.  
  4. NO.ATagParams.if{
  5.     value=0
  6.     isGreaterThan.field=fe_group
  7. }

Menu Item State: 

Eine weitere Möglichkeit sind die Common item states für Menüs; dort gibt es einen Item State speziell für zugangsbeschränkte Seiten: USR und URSRO

Weiterführende Links

Rubrik »if« in der TypoScript-Referenz
Hier vor allem die verschiedenen Vergleichsoperatoren und die Besipiele.

Common Item States in der TSref.

Kategorien: Typoscript  Kommentare 0
Tags: typoscript, menü

Es ist möglich, die Felder eines Mailformulars mit GET-Variablen vorzubelegen. Das muss allerdings mit Hilfe von TypoScript vorbereitet werden.

Folgendes Beispiel geht davon aus, dass das Formular mit der Variablen ?prod=xx aufgerufen wird. xx enthalt die uid eines News-Eintrags. Anhand der übergebenen uid soll das Formular mit dem Titel des News-Eintrags vorbelegt werden.

  1. tt_content.mailform {
  2.     # Kann auch an anderer Stelle erfolgen -
  3.     # das Register ist global
  4.  

  1.     15=LOAD_REGISTER
  2.     15 {
  3.       # REGISTER hat stdWrap-Eigenschaften, hier cObject
  4.       # Dadurch ist es möglich, das Register mit einer
  5.       # Datenbankabfrage zu füllen, was
  6.       # hier passiert mit Hilfe von RECORDS
  7.       produktname.cObject=RECORDS

  1.       # Contentobjekt RECORDS wird aufgerufen
  2.       produktname.cObject {
  3.           # source: Liste von uid. Mit stdWrap-
  4.           # Eigenschaften.
  5.           # data: stdWrap vom Typ getText
  6.           source.data=GPvar:prod
  7.           # tables: Liste der Tabellen
  8.           tables=tt_news
  9.           # Mit source und tables wird der Datenbank-Inhalt
  10.           # abgefragt.
  11.           # Dieser Inhalt muss jetzt noch gerendert werden.
  12.           # conf.[Tabelle]: Configarray zum Rendern des
  13.           # Inhalts (cObject)
  14.  

  1.           conf.tt_news=TEXT
  2.           conf.tt_news {
  3.               field=title
  4.           }
  5.       }
  6.   }
  7. }
  8. # Nötig, damit der die Variable auch wirklich ersetzt wird
  9. tt_content.mailform.20.data.insertData=1
  10. # Cache muss deaktiviert sein
  11. config.no_cache=1

Im Formular kann so auf den Wert zugegriffen werden:

  1. Name: | *Name=input,40
  2. Firma: |Firma=input,40
  3. Straße: |Strasse=input,40
  4. PLZ/Ort: |Ort=input,40
  5. Telefon: |Telefon=input,40
  6. E-Mail: | *email=input,40| |EMAIL
  7. Produkt: |Produkt=input,40|{register:produktname}
  8. Ihre Nachricht: |Mitteilung=textarea,40,8