Zeitreise

Weitere Varianten, Aufwärtskompatibilität

Inhalt
  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);

© 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 lesen

Chronologische Liste und Netflix-Links -

Neuerscheinungen in der Übersicht -

Vorschau auf Film- und Serien-Highlights -

Mehr zum Thema

Webdesign

Adobe Illustrator wird im Webdesign immer beliebter. Wie Sie das Tool richtig einsetzen, erfahren Sie hier.
Facebook

Was sind die Implikationen für Unternehmen und Endanwender bei Facebooks neuer Suche Graph Search?
Online-Recht

Allgemeine Geschäftsbedingungen liest sich niemand gerne durch. Sie sind jedoch notwendig und äußerst sinnvoll. Worauf sie achten sollten.
Online-Recht in der Cloud

Dateien werden immer häufiger in der Cloud bereitgestellt. Rechtlich ist das jedoch durchaus problematisch. Wir klären über das Urheberrecht in der…
E-Commerce-Logistik

Für den Erfolg eines Online-Shops sind zahlreiche Faktoren verantwortlich. Neben Produktvielfalt und Darstellung der Waren gehört auch die Logistik.