Zeitreise

Weitere Varianten, Aufwärtskompatibilität

  1. Typo3 mit Fluid
  2. efempty anpassen
  3. Weitere Anpassungen und newext
  4. Ausgabe
  5. Weitere Varianten, Aufwärtskompatibilität

Die zweite Variante ist ein Array mit drei Werten. Diese Werte werden in der index. html einfach über den Index, also 0, 1 und 2 angesprochen:

$array = array('Wert 1','Wert 2',
'Wert 3');
$this->view->assign('platzhalter2',
$array);

Die dritte Variante verwendet einen assoziativen Array mit Schüssel/Wert-Paaren, um den Platzhalter zu befüllen. Auf die Schlüssel wird in Fluid direkt zugegriffen. Die Syntax ist hier platzhaltername.schluesselname.

$array = array('wert1' => 'Wert 1',
'wert2' => 'Wert 2', 'wert3' => 'Wert 3');
$this->view->assign('platzhalter3',
$array);

Die vierte Variante ist die komplexeste, aber legt auch schon den Grundstein für den MVC-Ansatz. Hier wird ein Model namens Start verwendet. Den Namen des Models passen Sie mit dem neuen Extension-Key an, ersetzen im Klassennamen also Efempty durch Newext beziehungsweise durch den von Ihnen gewählten Extension-Key:

$start = new Tx_Newext_Domain_
Model_Start;
$start->setTitle("Ein Model mit
Titel!");
$this->view->assign('platzhalter4',
$start);
Typo3 mit Fluid

© Archiv

Angepasst: Die Ausgangserweiterung wurde umbenannt und mit neuen Platzhaltern und Werten befüllt.

Diese Änderung müssen Sie nun auch noch im Model selbst durchführen. Dort ersetzen Sie ebenfalls den alten Klassennamen Tx_Efempty_Domain_Model_Start durch Tx_Newext_Domain_Model_Start. Ansonsten ist die Model-Klasse aktuell recht unspektakulär. Sie definiert die Eigenschaften des Models. Sie kümmert sich selbst nicht um die Datenspeicherung.Dies erledigt wenn nötig ein Repository, wie Sie es etwa im blog_example vorfinden.

class Tx_Newext_Domain_Model_Start
extends Tx_Extbase_DomainObject_AbstractEntity {
protected $title = '';
public function __construct() {
}
public function setTitle($title) {
$this->title = $title;
}
public function getTitle() {
return $this->title;
}
}

Unter Umständen wird die Änderung nicht sofort erkannt, zum Beispiel wenn Sie Caching für die Action aktiviert haben. In diesem Fall reicht es meist aus, den Typo3-Cache zu löschen. Damit steht das Model dann in der View zur Verfügung. Der Zugriff erfolgt mit dem Platzhalter und dann der jeweiligen Eigenschaft des Models.

Aufwärts kompatibel

Wer heute bereits umfangreichere Typo3-Erweiterungen plant, sollte auf jeden Fall einen Blick auf extbase und fluid werfen. Zum einen macht es Sinn, sich schon jetzt mit den neuen Prinzipien von Flow3 und Typo3 5.0 zu beschäftigen, zum anderen lockt das Versprechen nach weitgehender Aufwärtskompatibilität. Und der Aufwand hält sich für einfachere Erweiterungen auch in Grenzen.

Bleibt abzuwarten, was die Zukunft noch bringt. Heiß ersehnt ist natürlich die finale Version des Extbase-Kickstarters, der dann das Kopieren und Adaptieren eines leeren Containers wie es dieser Workshop zeigt, überflüssig machen wird.

Mehr zum Thema

HTML5: Quick Reference Guide
Ratgeber: "HTML5"

Die wichtigsten Tags auf einen Blick: In unserem praktischen Arbeitsblatt finden Sie einen wertvollen Begleiter für die Umstellung Ihrer Webprojekte…
internet, webdesign, google, content, ranking, seo, suchmaschine
Ratgeber: Urheberrecht

Einzigartige Inhalte bieten Lesern Mehrwert und sind ein wichtiges Qualitätsmerkmal. Ärgerlich, wenn sich jemand durch Kopieren an fremden…
Die besten HTML5-Tipps
Neue Tipps & Tricks für blitz.io

Wer die Leistung einer Applikation ermitteln möchte, braucht keine Skripte zu schreiben, sondern kann einen der zahlreichen Online-Dienste…
image.jpg
Ratgeber: Webentwicklung

Die clientseitige Javascript-Entwicklung bietet fast keine Entwicklungsumgebungen und auch keine vernünftigen Werkzeuge zur Fehlersuche. Eine der…
internet, webdesign, meteor, webapplikationen
Ratgeber

Mit Meteor sollen Entwickler in kurzer Zeit Umgebungen für Webapplikationen erstellen können, ohne sich um lästige Details kümmern zu müssen. Wir…