Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige ÜberarbeitungLetzte ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
typo3:verschiedenes [2014/03/21 21:05] – [Headlines mit Klassen versehen] admin | typo3:verschiedenes [2017/05/10 21:08] – registerPageTSConfigFile admin | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
===== Externes Typoscript einbinden ===== | ===== Externes Typoscript einbinden ===== | ||
- | <code typoscript>< | + | * Pfade können relativ oder absolut sein |
+ | * man kann auf Extensions verweisen ('' | ||
+ | * man kann auch auch ganze Ordner auslesen ('' | ||
+ | * es können Dateiendungen gefiltert werden (zB. nur //.t3s// auslesen; // | ||
+ | * Conditions sind möglich <wrap caution> | ||
+ | * auch für TSconfig verwendbar | ||
+ | |||
+ | <code typoscript> | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | ==== registerPageTSConfigFile und INCLUDE_TYPOSCRIPT ==== | ||
+ | |||
+ | Wenn man in einer Extension über '' | ||
+ | |||
+ | **Configuration/ | ||
+ | <code php> | ||
+ | <?php | ||
+ | defined(' | ||
+ | |||
+ | \TYPO3\CMS\Core\Utility\ExtensionManagementUtility:: | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ); | ||
+ | </ | ||
+ | |||
+ | **Configuration/ | ||
+ | <code typoscript> | ||
+ | // funktioniert nicht: | ||
+ | < | ||
+ | |||
+ | // so gehts: | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | Quelle: [[https:// | ||
---- | ---- | ||
Zeile 35: | Zeile 78: | ||
</ | </ | ||
- | ---- | ||
- | ===== Headlines mit Klassen versehen ===== | ||
- | |||
- | // | ||
- | |||
- | <code html> | ||
- | <div class=" | ||
- | <h1 class=" | ||
- | </ | ||
- | <div class=" | ||
- | < | ||
- | </ | ||
- | <div class=" | ||
- | < | ||
- | </ | ||
- | </ | ||
- | |||
- | Jede Überschrift wird also mit einem zusätzlichen // | ||
- | |||
- | Mit diesem TypoScript wird folgendes erreicht: | ||
- | * Die div-Elemente werden komplett entfernt. | ||
- | * Allen Überschriften wird direkt eine Klasse zugewiesen, die abhängig vom Wert im Feld // | ||
- | * Falls das Feld // | ||
- | * Die praktische Klasse der ersten Überschrift auf einer Seite bleibt erhalten. | ||
- | |||
- | <code typoscript> | ||
- | lib.stdheader { | ||
- | 3 > | ||
- | 3 = LOAD_REGISTER | ||
- | 3.headerClass.cObject = COA | ||
- | 3.headerClass.cObject { | ||
- | 10.cObject = CASE | ||
- | 10.cObject { | ||
- | key.field = header_layout | ||
- | 0 = TEXT | ||
- | 0 { | ||
- | value = header-first header-1 | ||
- | if.value = 1 | ||
- | if.equals.data = cObj: | ||
- | noTrimWrap = | class=" | ||
- | } | ||
- | default = TEXT | ||
- | default { | ||
- | value = header-first header-{field: | ||
- | if.value = 1 | ||
- | if.equals.data = cObj: | ||
- | stdWrap.insertData = 1 | ||
- | noTrimWrap = | class=" | ||
- | } | ||
- | } | ||
- | stdWrap.ifEmpty.cObject = CASE | ||
- | stdWrap.ifEmpty.cObject { | ||
- | key.field = header_layout | ||
- | 0 = TEXT | ||
- | 0 { | ||
- | value = header-1 | ||
- | noTrimWrap = | class=" | ||
- | } | ||
- | default = TEXT | ||
- | default { | ||
- | value = header-{field: | ||
- | insertData = 1 | ||
- | noTrimWrap = | class=" | ||
- | } | ||
- | } | ||
- | } | ||
- | stdWrap.dataWrap > | ||
- | } | ||
- | </ | ||
- | |||
- | <WRAP center round info 80%> | ||
- | ==== Erklärung: ==== | ||
- | Wir passen // | ||
- | |||
- | Das erste CASE-Objekt gibt nur dann einen Wert (also die Klassen) zurück, wenn der Wert aus // | ||
- | |||
- | Wenn das erste CASE-Objekt keinen Wert ausgibt, weil es sich nicht um die erste Überschrift der Seite handelt, wird Dank '' | ||
- | </ | ||
- | |||
- | |||
- | Das zweite TypoScript sorgt dafür, dass Überschriften aus dem RTE ebenfalls Klassen erhalten: | ||
- | <code typoscript> | ||
- | lib.parseFunc_RTE.nonTypoTagStdWrap.encapsLines { | ||
- | addAttributes.H1.class = header-1 | ||
- | addAttributes.H2.class = header-2 | ||
- | addAttributes.H3.class = header-3 | ||
- | } | ||
- | </ | ||
- | |||
- | Ergebnis: | ||
- | <code html> | ||
- | |||
- | </ | ||
- | |||
- | ---- | ||
- | ===== Listenelemente im RTE um < | ||
- | |||
- | Hiermit lassen sich Auflistungszeichen und Text separat formatieren. | ||
- | < | ||
- | **Setup:** | ||
- | <code typoscript> | ||
- | lib.parseFunc_RTE.externalBlocks := addToList(ol, | ||
- | lib.parseFunc_RTE.externalBlocks { | ||
- | li.callRecursive = 1 | ||
- | li.callRecursive.alternativeWrap = < | ||
- | li.stdWrap.HTMLparser { | ||
- | allowTags = li,span,p | ||
- | removeTags = p | ||
- | } | ||
- | ul.callRecursive = 1 | ||
- | ol.callRecursive = 1 | ||
- | } | ||
- | </ | ||
- | **CSS:** | ||
- | <code css> | ||
- | li {color: | ||
- | li > span {color: | ||
- | </ |