Skip to content

Instantly share code, notes, and snippets.

@SinusMedii
Last active October 3, 2015 20:08
Show Gist options
  • Select an option

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

Select an option

Save SinusMedii/2518689 to your computer and use it in GitHub Desktop.
TypoScript: TS Setup 04 PAGE
################################################################################################
// TEMPLATE WÄHLER
################################################################################################
// In den Seiteneigenschaften auf der obersten Ebene muss noch im TS-Config der Eintrag ergänzt werden.
[globalVar = TSFE:page|layout = 0]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_##_2s.html
[global]
[globalVar = TSFE:page|layout = 1]
plugin.tx_automaketemplate_pi1.content.file = fileadmin/template/template_##_1s.html
page.headerData.15 = TEXT
page.headerData.15.value (
<style type="text/css" media="screen">
div#content_left { width: 700px !important; margin: 0 auto !important;}
</style>
)
[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
// Ersetzt den Content in der rechten Spalte
subparts.content_right < styles.content.getRight
subparts.content_right.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/styles.css
}
// Einbinden als JSLibs, damit sie eigenständig bleibt und nicht in das komprimierte JS reingenommen wird.
page.includeJSlibs {
jqueryjs = fileadmin/template/js/libs/jquery-1.7.1.min.js
}
// Javascript im Footer
page.includeJSFooter {
userscript = fileadmin/template/js/script.js
}
page.10 < lib.mainTemplate
page.headerData.10 < lib.headTemplate
page.10.debugData=1
page.headerData.7 = TEXT
page.headerData.7.value (
<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" href="fileadmin/template/apple-touch-icon.png">
)
################################################################################################
// 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
################################################################################################
# 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
# 31 < tt_content.stdWrap.innerWrap.cObject.default
# 31.15.value = newsrahmen
# }
# Wrap für die zusätlichen Standardframes
# Diese sind definiert in der ts_Page_Config.ts
# tt_content.stdWrap.innerWrap.cObject.31 =< tt_content.stdWrap.innerWrap.cObject.default
# tt_content.stdWrap.innerWrap.cObject.31.20.10.value = css-klasse1
# 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="linkzumanfang"><a href="#top">Seitenanfang</a></div>
// 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
################################################################################################
# HIER WIRD DIE METANAVIGATION OBEN ERSTELLT:
page.10.marks.METANAVIGATION = HMENU
page.10.marks.METANAVIGATION {
special = list
special.value = 1, 2
1 = TMENU
1.NO = 1
1.NO.linkWrap = &nbsp;|&nbsp;<span class="metastrich">&#124;</span> |*| &nbsp;|&nbsp;<span class="metastrich">&#124;</span> |*| &nbsp;|
}
# 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
page.10.marks.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