Um die ID der aktuell aufgerufenen Seite (also jene die die Extension enthält) in einer Extension auszulesen gibt es 2 Möglichkeiten:
$GLOBALS["TSFE"]->id
oder
$this->cObj->data['pid']
Um die ID der aktuell aufgerufenen Seite (also jene die die Extension enthält) in einer Extension auszulesen gibt es 2 Möglichkeiten:
$GLOBALS["TSFE"]->id
oder
$this->cObj->data['pid']
Um in einer Typo3-Extension die Größe einer Grafik zu verändern (resize) kann man sich des Typo3-Framworks und ImageMagick zu nutze machen. Dazu erstellt man ein Konfigurationsarray, das die selben Möglichkeiten wie aus TypoScript bekannt, bietet und erstellt dann ein Typo3-Objekt vom Typ "IMG_RESOURCE". Als Rückgabe erhält man den Pfad auf das neu generierte Bild.
$imgsrc = 'uploads/pics/'.$image;
$img = array();
$img['file'] = $imgsrc;
$img['file.']['maxW'] = $this->conf['maxWidth'];
$img['file.']['maxH'] = $this->conf['maxHeight'];
$imagepath = $this->cObj->IMG_RESOURCE($img);
Der folgende Code verändert nicht nur die Größe des Bildes, sondern passt dieses auch an eine vorgegebene Größe an (crop).
$imgsrc = 'uploads/pics/'.$image;
$img = array();
$img['file'] = 'GIFBUILDER';
$img['file.']['XY'] = $this->conf['imgWidth'] . ',' . $this->conf['imgHeight'];
$img['file.']['10'] = 'IMAGE';
$img['file.']['10.']['file'] = $imgsrc;
$img['file.']['10.']['file.']['width'] = $this->conf['imgWidth'] . 'c';
$img['file.']['10.']['file.']['height'] = $this->conf['imgHeight'] . 'c';
$imagepath = $this->cObj->IMG_RESOURCE($img);
Typo3 bietet bereits eine integrierte auf JavaScript basierte Lösung um E-Mailadressen auf der Webseite vor Spamrobots und Crawlern zu schützen.
Dazu muss dem TypoScript-Setup nur folgendes Codesnippet hinzugefügt werden:
config.spamProtectEmailAddresses = 2
config.spamProtectEmailAddresses_atSubst = (a)
spamProtectEmailAddresses kann einen Wert zwischen -5 und 5 haben und gibt dabei die ASCII-Zeichenverschiebung an.
Achtung: removeDefaultJS darf nicht auf 1 stehen (external oder 0), da ansonsten das benötigte JavaScript nicht eingebunde wird
Beim manuellen importieren von Adressdaten in die Datenbanktabelle von tt_address für die Verwendung in Zusammenhang mit DirectMail muss umbedingt das Feld module_sys_dmail_html auf den Wert 1 gesetzt werden, da DirectMail ansonsten keine HTML-E-Mails an diese Empfänger schickt.
Gerade bei Webseites mit Informationsboxen gibt es oft das Verlangen diese Boxen so lange auf einer Seite nicht anders definiert auf allen Seiten gleich darzustellen. Diesem Problem schafft die Extension "KB TV Content Slide" Abhilfe. Dazu muss lediglich die Extension installiert werden und die Datenstruktur des TemplaVoila-Templates angepasst werden.
Grundsätzlich wird der auf der Startseite (Root-Seite des Baumes) definierte Content der konfigurierten Spalte nach unten hin weitervererbt und auf jeder Unterseite angezeigt. Soll jetzt auf einer Seite ein anderer Content angezeigt werden, so muss dort nur anderer Content angelegt werden, denn sobald Content erkannt wird, wird dieser anstelle der von der Root-Seite verwendet.
Per Conditions lässt sich in TypoScript so etwas wie if-else realisieren. Dabei gibt es z.B. das Szenario das Typoscript nur auf bestimmten Seiten ausgeführt werden soll um z.b.: eine Navigation nur auf bestimmten Seiten anzeigen zu lassen.
[PIDinRootline = x]
...
[global]
[globalVar = TSFE:id=x]
...
[global]
Gerade für Copyright Informationen oder das Versanddatum eines Newsletters ist es komfortabel sich das aktuelle Datum per TypoScript ausgeben zu lassen.
date = TEXT
date.data = date:U
# date like 10.12.2008
date.strftime = %d.%m.%Y
copyright = TEXT
copyright.data = date:U
copyright.strftime = %Y
copyright.noTrimWrap = |(c) | www.domain.com|
Die Parametrisierung von strftime entspricht den Konvertierungen der PHP-strftime()-Funktion: http://de.php.net/strftime
Typo3 bietet per TypoScript die Möglichkeit Links auf interne Seiten zu erstellen die dann auch automatisch in RealUrls konvertiert werden oder bei ausblenden oder löschen der betreffenden Seite deaktiviert werden.
link = HTML
link {
value = Link
value.typolink.parameter = 1
value.typolink.ATagParams = title="mein Link"
stdWrap.wrap = <div id="link"> | </div>
}
parameter: Geben Sie hier die ID der Zielseite an
ATagParams: hier können Sie dem a-Tag html-Attribute hinzufügen
link = HTML
link{
value = Link with referer
value.typolink.parameter = 64
value.typolink.ATagParams = title="interner Link"
#add parameter referer to link, with link to the current page
value.typolink.additionalParams.data = getIndpEnv: TYPO3_REQUEST_URL
value.typolink.additionalParams.wrap = &referer=|
value.typolink.additionalParams.rawUrlEncode = 1
stdWrap.wrap = <div id="link">|</div>
}
Das Typo3-Framework bietet die Möglichkeit in einer Extension mittels PHP die ID des aktuellen Content-Elements (Content-Elemnt der Extension) auszulesen.
$this->cObj->data['uid']
Eine hübsche Variante sich im HTML-Code einer Typo3-Umgebung zu verewigen, ist die Erweiterung des Standardkommentars im HTML-Header.
page.config {
headerComment (
*********************************************************************************
Website by xxxxx - www.domain.com
*********************************************************************************
)
}