Ich konnte es kaum glauben, dass ich so lange an der Lösung eines manuellen (ohne Extension, sondern nur mit TypoScript) printlinks saß. Teilweise waren die Lösungen veraltet (z.B. GPvar anstatt GP) oder nahmen keine Rücksicht auf die Get Variablen von tt_news. Außerdem war es mir wichtig, dass ich nicht direkt über JavaScript ein window.print
aufrufe und dann „nur“ noch die print.css genommen wird. Ich wollte ein komplett neues Template, somit eine Druck-Vorschaufunktion für den User und erst dann das automatische OS Druck-Fenster. Das TypoScript kann natürlich nach belieben angepasst werden.
Hiermit erstelle ich den Printlink und später kopiere ich ihn einen Marker.
temp.print-link = COA temp.print-link { 10 = TEXT 10.value = Seite drucken stdWrap.wrap = | stdWrap.typolinkno_cache = 1 stdWrap.typolink.target = print stdWrap.typolink.ATagParams = target = _top stdWrap.typolink.parameter.cObject = COA stdWrap.typolink.parameter.cObject { 5 = TEXT 5.data = page:uid 5.wrap = index.php?id=| 5.required = 1 10 = TEXT 10.value = &no_cache=1 20 = TEXT 20.data = GP:L 20.wrap = &L=| 20.required = 1 30 = TEXT 30.data = GP:tx_ttnews | backPid 30.wrap = &tx_ttnews[backPid]=| 30.required = 1 40 = TEXT 40.data = GP:tx_ttnews | tt_news 40.wrap = &tx_ttnews[tt_news]=| 40.required = 1 50 = TEXT 50.data = GP:cHash 50.wrap = &cHash=| 50.required = 1 60 = TEXT 60.value = &type=98 } }
Und hiermit definiere ich das Drucktemplate
print = PAGE print { typeNum = 98 bodyTag = <body onload="javascript:window.print()"> ##disable typo3 index config.index_enable = 0 ##disable google index headerData.123 = TEXT headerData.123.value = <meta name="robots" content="noindex, nofollow" /> includeCSS.fileDefault = fileadmin/templates/css/print.css 10 = TEMPLATE 10 { template = FILE template.file = fileadmin/templates/print.tmpl workOnSubpart = DOCUMENT_BODY marks { CONTENT < styles.content.get } } }