Typo3 Extensions entwickeln @deprecated: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
F (Diskussion | Beiträge) |
F (Diskussion | Beiträge) |
||
| Zeile 29: | Zeile 29: | ||
=== Lokalisierung mit xml === | === Lokalisierung mit xml === | ||
pi1/locallang.xml | pi1/locallang.xml | ||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> | |||
<T3locallang> | |||
<meta type="array"> | |||
<type>module</type> | |||
<description>Language labels for plugin "tx_testit_pi1"</description> | |||
</meta> | |||
<data type="array"> | |||
<languageKey index="default" type="array"> | |||
<label index="VAR1">text for var 1 in english</label> | |||
<label index="VAR2">text for var 2 in english</label> | |||
</languageKey> | |||
<languageKey index="de" type="array"> | |||
<label index="VAR1">Text für var 1 in deutsch</label> | |||
<label index="VAR2">Text für var 2 in deutsch</label> | |||
</languageKey> | |||
</data> | |||
</T3locallang> | |||
=== php === | === php === | ||
Version vom 16. Februar 2013, 18:56 Uhr
um sich das Grundgerüst einer Extension erstellen zu lassen bitte hier schauen Typo3 kickstarter Extension
tslib_pibase
Beispiel mit template, css und Sprachdatei
template mit html
pi1/templates/template.html
<!-- ###SUBPART1### begin --> <div ID="VAR1">###VAR1###</div> <div ID="SUBPART2_MARKER">###SUBPART2_MARKER###</div> <!-- ###SUBPART1### end --> <!-- ###SUBPART2### begin --> <div ID="VAR2">###VAR2###</div> <!-- ###SUBPART2### end -->
Design mit css
pi1/template.css
div#VAR1 {
font-size: 12px; color:red;
}
div#VAR2 {
font-size: 14px; color:blue;
}
Lokalisierung mit xml
pi1/locallang.xml
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> <T3locallang> <meta type="array"> <type>module</type> <description>Language labels for plugin "tx_testit_pi1"</description> </meta> <languageKey index="default" type="array"> <label index="VAR1">text for var 1 in english</label> <label index="VAR2">text for var 2 in english</label> </languageKey> <languageKey index="de" type="array"> <label index="VAR1">Text für var 1 in deutsch</label> <label index="VAR2">Text für var 2 in deutsch</label> </languageKey> </T3locallang>
php
pi1/class.tx_testit_pi1.php (bzw. die Hauptklasse)
class tx_testit_pi1 extends tslib_pibase {
// ....
public function main($content, array $conf) {
// speichern der Konfiguration
$this->conf = $conf;
// POST GET wird geladen
$this->pi_setPiVarDefaults();
// Sprachdaten werden geladen
$this->pi_loadLL();
// css wird included
$GLOBALS['TSFE']->pSetup['includeCSS.'][$this->extKey] = 'EXT:' . $this->extKey . '/pi1/css/template.css';
// template wird included
$this->template = $this->cObj->fileResource('EXT:' . $this->extKey . '/pi1/templates/template.html');
// Subparts werden extrahiert
$tmpl_SUBPART1 = $this->cObj->getSubpart($this->template, '###SUBPART1###');
$tmpl_SUBPART2 = $this->cObj->getSubpart($this->template, '###SUBPART2###');
// Werte werden für die Marker gesetzt
$array_markers = array(
'###VAR1###' => $this->pi_getLL('VAR1'),
'###VAR2###' => $this->pi_getLL('VAR2'),
);
// der Subpart 2 wird ins SUBPART2_MARKER gesetzt
$array_markers['###SUBPART2_MARKER###'] = $this->cObj->substituteMarkerArrayCached($tmpl_SUBPART2, $array_markers);
//
$content = $this->cObj->substituteMarkerArrayCached($tmpl_SUBPART1, $array_markers);
return $this->pi_wrapInBaseClass($content);
}
// ....
}