Skip to content

Instantly share code, notes, and snippets.

@SinusMedii
Last active December 14, 2015 20:58
Show Gist options
  • Select an option

  • Save SinusMedii/5147164 to your computer and use it in GitHub Desktop.

Select an option

Save SinusMedii/5147164 to your computer and use it in GitHub Desktop.
TypoScript: TS Setup 04 PAGE BOOTSTRAP
################################################################################################
# TEMPLATE WÄHLER
################################################################################################
# In den Seiteneigenschaften auf der obersten Ebene muss noch im TS-Config der Eintrag ergänzt werden.
# Hier werden die Backend-Layouts definiert. Je nach Layout wird das entsprechende Layout geladen.
[globalVar = TSFE:page|backend_layout = 0] || [globalVar = TSFE:page|backend_layout = 1]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_.html
[global]
[globalVar = TSFE:page|backend_layout = 2]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_02.html
[global]
[globalVar = TSFE:page|backend_layout = 3]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_03.html
[global]
[globalVar = TSFE:page|backend_layout = 4]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_04.html
[global]
[globalVar = TSFE:page|backend_layout = 5]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_05.html
[global]
[globalVar = TSFE:page|backend_layout = 6]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_06.html
[global]
################################################################################################
# HEAD UND BODY
################################################################################################
# Main TEMPLATE cObject für den Body
lib.mainTemplate = TEMPLATE
lib.mainTemplate {
# Führt den Inhalt via Autoparser in die Seite
template =< plugin.tx_automaketemplate_pi1
# Nur den Content auswählen zwischen dem Body-Tag
workOnSubpart = DOCUMENT_BODY
# Ersetzt die Navigation
subparts.navigation < lib.navigation
# Ersetzt den Content
subparts.content_left < styles.content.get
# subparts.content_left.renderObj.stdWrap.wrap = <div class="myWrap"> | </div>
# Ersetzt den Content in der rechten Spalte
subparts.content_right < styles.content.getRight
#subparts.content_right.stdWrap.ifEmpty = &nbsp;
# Ersetzt den Content in der rechten Spalte
subparts.content_border < styles.content.getBorder
#subparts.content_border.stdWrap.ifEmpty = &nbsp;
}
# Main TEMPLATE cObject für den Head
lib.headTemplate = TEMPLATE
lib.headTemplate {
template =< plugin.tx_automaketemplate_pi1
# Nur den Content auswählen zwischen Head-Tag
workOnSubpart = DOCUEMNT_HEADER
}
################################################################################################
# PAGE
################################################################################################
# Default PAGE Object:
page = PAGE
page.typeNum = 0
# Einbinden der CSS-Files
page.includeCSS {
maincss = fileadmin/template/css/bootstrap.css
}
# Einbinden als JSLibs, damit sie eigenständig bleibt und nicht in das komprimierte JS reingenommen wird.
page.includeJSlibs {
jqueryjs = fileadmin/template/js/jquery-1.8.3.min.js
#jqueryjs = fileadmin/template/js/jquery-1.9.0.min.js
userscript = fileadmin/template/js/my_scripts.js
}
# Javascript im Footer
page.includeJSFooter {
#userscript = fileadmin/template/js/my_scripts.js
}
page.10 < lib.mainTemplate
page.headerData.10 < lib.headTemplate
page.10.debugData=1
page.headerData.7 = TEXT
page.headerData.7.value (
<script src="fileadmin/template/js/respond.min.js"></script>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="fileadmin/template/favicon.ico">
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="fileadmin/template/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="fileadmin/template/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="fileadmin/template/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="fileadmin/template/apple-touch-icon-57-precomposed.png">
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
)
################################################################################################
# META
################################################################################################
page.meta {
ROBOTS.field = robots
ROBOTS.ifEmpty = index,follow
DESCRIPTION.field = description
DESCRIPTION.ifEmpty = Hier kommt der Satz
KEYWORDS.field = keywords
KEYWORDS.ifEmpty = hier, die, keywords,
}
################################################################################################
# DIVERSE KONFIGURATION
################################################################################################
# Der Standardframe hat immer Span12 als zusätzliche Klasse
#tt_content.stdWrap.innerWrap.cObject.default.20.10.value = csc-default span12
tt_content.stdWrap.outerWrap.cObject=CASE
tt_content.stdWrap.outerWrap.cObject{
key.field = layout
default = TEXT
default.value = |
1 = TEXT
# Value 1 wird für das Content-Element Dateilinks benötigt
1.value = <div class="csc-uploads">|</div>
2 = TEXT
2.value = <div class="span2">|</div>
3 = TEXT
3.value = <div class="span3">|</div>
100 = TEXT
100.value = <div class="span4">|</div>
101 = TEXT
101.value = <div class="span5">|</div>
102 = TEXT
102.value = <div class="span6">|</div>
103 = TEXT
103.value = <div class="span7">|</div>
104 = TEXT
104.value = <div class="span8">|</div>
105 = TEXT
105.value = <div class="span9">|</div>
106 = TEXT
106.value = <div class="span10">|</div>
107 = TEXT
107.value = <div class="span11">|</div>
108 = TEXT
108.value = <div class="span12">|</div>
}
# DIESE VERSION IST NUR FÜR TYPO3 KLEINER 4.7
# Wrap für die zusätlichen Standardframes
# Diese sind definiert in der ts_Page_Config.ts
tt_content.stdWrap.innerWrap.cObject = CASE
tt_content.stdWrap.innerWrap.cObject {
key.field = section_frame
40 < tt_content.stdWrap.innerWrap.cObject.default
40.15 = Carousel Startbild
41 < tt_content.stdWrap.innerWrap.cObject.default
41.15 = Carousel Folgebilder
42 < tt_content.stdWrap.innerWrap.cObject.default
42.15 = Rahmen ohne Hintergrund
43 < tt_content.stdWrap.innerWrap.cObject.default
43.15 = Rahmen mit grauem Hintergrund
}
# Wrap für die zusätlichen Standardframes
# Diese sind definiert in der ts_Page_Config.ts
tt_content.stdWrap.innerWrap.cObject.40 =< tt_content.stdWrap.innerWrap.cObject.default
tt_content.stdWrap.innerWrap.cObject.40.20.10.value = item active
tt_content.stdWrap.innerWrap.cObject.41 =< tt_content.stdWrap.innerWrap.cObject.default
tt_content.stdWrap.innerWrap.cObject.41.20.10.value = item
tt_content.stdWrap.innerWrap.cObject.42 =< tt_content.stdWrap.innerWrap.cObject.default
tt_content.stdWrap.innerWrap.cObject.42.20.10.value = well wellnone
tt_content.stdWrap.innerWrap.cObject.43 =< tt_content.stdWrap.innerWrap.cObject.default
tt_content.stdWrap.innerWrap.cObject.43.20.10.value = well
# Formatierung der speziellen Bilderrahmen
# tt_content.image.20.1.params.field = image_frames
# tt_content.image.20.1.params.if.isTrue.field = image_frames
# tt_content.image.20.1.params.wrap = class="imageFrames-|"
tt_content.uploads.20.default < tt_content.uploads.20.1
# Setzt den Hintergrund von Klickvergrössern auf weiss
tt_content.textpic.20.1.imageLinkWrap.bodyTag = <bgColor="#FFFFFF">
# Damit im Kontaktformular bei Pflichtfelder die Meldung auf Deutsch kommt.
tt_content.mailform.20.badMess = Bitte füllen Sie noch folgende Felder aus:
# Umbenennen vom Standard-Link to top in Deutsch -> kann in den jeweiligen Seitenelementen aktiviert werden.
tt_content.stdWrap.innerWrap2 = |<div class="csc-default linkzumanfang"><a href="#top">Seitenanfang</a></div>
# tt_content.text.20.parseFunc.tags.link.typolink {
# wrap = <i class="icon-forward"></i>&nbsp;|
# ATagBeforeWrap = 1
# }
# Damit im P-Tag die Class: bodytext entfernt wird:
lib.parseFunc_RTE.nonTypoTagStdWrap.encapsLines {
addAttributes.P.class >
}
# RTE-PARSE-FUNKTIONEN #
# Damit die TD nicht mit p-Tag gewrappt wird
lib.parseFunc_RTE.externalBlocks.table.HTMLtableCells.default >
lib.parseFunc_RTE.externalBlocks.table.HTMLtableCells.default.stdWrap.parseFunc =< lib.parseFunc
# Damit die Tabelle nicht per default als class=contenttable gewrappt wird
lib.parseFunc_RTE.externalBlocks.table.stdWrap.HTMLparser.tags.table.fixAttrib.class.list >
################################################################################################
# Platzhalter für Metanavigation, Printlink und Suche
################################################################################################
# Nach dem Breadcomb kommt hier noch der Drucklink:
# Vor dem Printlink kommt der der Anker-Link nach oben. Dieser wird nur gewrappt.
#temp.printlink = TEXT
#temp.printlink.wrap = <a href="#" onClick="window.open('index.php?id=|&type=98','Drucken','height=800, width=600,scrollbars=yes,menubar=yes,toolbar=yes');">Drucken</a>
#temp.printlink.field = uid
#Einbinden der verchiedenen navigationen
page.10.marks {
METANAVIGATION < lib.metanavigation
BREADCRUMB < lib.breadcrumb
SUBNAVIGATION < lib.subnavigation
FOOTERNAVIGATION < lib.footernavigation
PRINTLINK < temp.printlink
}
# Neues Page-Objekt für die Druckseite mit der TypeNum 98
print_page = PAGE
print_page {
typeNum = 98
# Hier wird das Stylesheet eingebunden
stylesheet = fileadmin/template/css/styles.css
# Hier wird das Stylesheet noch mit Media=Print eingebunden
headerData.6 = TEXT
headerData.6.value = <!--TYPO3SEARCH_begin--><!--TYPO3SEARCH_end--><link rel="stylesheet" media="print" href="fileadmin/template/css/styles.css">
headerData.7 = TEXT
headerData.7.value = <style type="text/css"> body {background: none !important; text-align: left !important; } .footerlinie {border-bottom: 1px solid #444; margin-bottom: 15px !important; } </style>
bodyTag >
bodyTag = <body onload="window.print()">
10 = TEXT
#10.value = {field:title}
#10.insertData = 1
10.wrap = <table width="100%" border="0" align="center" cellpadding="2" cellspacing="0" class="rahmen"><tr><td height="25">&nbsp;</td></tr><tr><td class="abstand-titel"><h1> | </h1><br /><br /><p class="footerlinie">Print via Website domain.ch</td></tr>
20 = CONTENT
20 < styles.content.get
20.wrap = <tr><td class="abstand"> | </td></tr></table></div><!--TYPO3SEARCH_begin-->
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment