Jak dodać własny Section Frame do TYPO3
Kilka lat temu pisałem o możliwości dodawania własnych "content wrapperów" do każdego z elementów kontentu w TYPO3. W dzisiejszych czasach nie jest już tak bardzo konieczne wykorzystywanie wtyczek by rozszerzyć listę dostępnych "ramek" - wystarczy odrobina TypoScriptu.
Co więcej, możemy dany element umieścić tylko na określonej stronie/podstronie w TYPO3. Powiedźmy, że chcemy dla niektórych elementów treści typu tekst, tekst z obrazkiem, obrazek (lub jakikolwiek inny) umieścić w np. div-ie z własną .class-ą lub #id:
<div class="my-class">.....</div>
Na początek dodajmy jego nazwę byśmy wiedzieli co wybrać z rozwijanej listy. Niech frame/ramka nazywa się np. "szare tło". Wchodzimy we właściwości strony, do której chcemy dodać własną ramkę. W momencie gdy chcemy by modyfikacja była dostępna dla całej instalacji TYPO3 wchodzimy do głównego katalogu strony (roota) i edytujemy jego właściwości. Następnie przechodzimy do zakładki "Resources" i wprowadzamy taki fragment w polu Page TSConfig:
- Kod: Zaznacz wszystko | Linenumbers on/off
-
- TCEFORM.tt_content.section_frame {
- addItems.101 = Szare tło
- }
Teraz musimy wskazać TYPO3 co ma się znajdować pod tym elementem po wybraniu go z listy rozwijanej. W momencie gdy modyfikowaliśmy tylko jedną podstronę, to na tej stronie tworzymy szablon strony (lub wprowadzamy zmiany w już istniejącym). Jeżeli natomiast chcemy by zmiany objęły całą stronę edytujemy główny TypoScript strony. Wstawiamy taki fragment kodu:
- Kod: Zaznacz wszystko | Linenumbers on/off
-
- key.field = section_frame
- 101.value = <div class="my-class">|</div>
- }
Po tych modyfikacjach pozostaje nam czyszczenie cache i opisanie nowego elementu w arkuszu stylów CSS.