Login / Status
developer.Resource
Home . Documentation . Document Library . Tutorials
Sponsors
hosted by punkt.deTYPO3 and Open Source Magazine

1.7. Web Applikationen

Der Begriff "Web Applikationen" wird für "Programme" einer Website benutzt, die eine bestimmte Aufgabe erledigen, die die Verarbeitung von Daten in Echtzeit einschließt. Das Gästebuch beispielsweise, die Suchmaschine, das Message Board, ein Formular um Versicherungskosten zu ermitteln oder das Registrierungsformluar für neue Mitglieder, durchsuchbare Adressbücher - all diese Funktionen sind Web Applikationen.

Viele solcher Applikationen sind heutzutage Stand-Alone-Lösungen, jeweils mit einem eigenen System für Administration usw. Content Management Systeme unterstützen teilweise auch solche Möglichkeiten, aber normalerweise innerhalb eines Frameworks, das diese Funktionalität integriert.

TYPO3 ist so ein System - eine "web application platform" - welche Sie nicht nur umfangreich dabei unterstützt, solche Applikationen zu verwenden und zu verwalten, sondern auch solche zu entwickeln! Mit dem Extension Manager ist die Installation und Distribution so einfach wie ein Mausklick, und mit dem Kickstarter haben Sie in 2 Minuten ein Gerüst zusammengestellt, auf dessen Basis Sie eigene Applikationen erstellen können.

Wenn Sie sich für diese Themen interessieren, sollten Sie sich die "Episode"-Videos ansehen, die Sie in der Videoseite auf typo3.org finden. Zusätzlich gibt es eine Reihe von Tutorials zu diesem Thema, beispielsweise eines das Oliver Hofmann geschrieben hat. Beachten Sie jedoch, dass diese ganzen Informationen für fortgeschrittene Entwickler bestimmt sind und Sie weder erwarten sollten, sie zu verstehen, noch irgendetwas zu entwickeln, bevor Sie mehr Erfahrung mit TYPO3 gesammelt haben!

Content Management und das "Page Tree" Paradigma

Wenn man Content Management Systeme kategorisiert, so findet man einige, die den Ansatz eines "Application Frameworks" verfolgen, andere den eines "Page Trees". TYPO3 gehört zu den letzteren.

Trotzdem hat dies keinen einschränkenden Einfluss auf TYPO3s Status als ein Content Management Framework. Vielmehr verstärkt der Page-Tree-Ansatz noch die Möglichkeiten für solche Anwendungen, nämlich durch die logische Unterscheidung zwischen dem Page Tree als eine Art Container und den Applikationen selbst. Mit anderen Worten: Sie können beides haben, ein Gästebuch, News System, Benutzerverwaltungs-Formular und Versicherungskosten-Kalkulation in ein- und demselben System, ohne dabei die Dinge zu verschmischen - denn alle Applikationen agieren normalerweise innerhalb der Grenzen einer einzigen Seite! Alle Datensätze / Elemente einer Applikation werden dort gespeichert, alle Transaktionen werden von demselben Plugin mit derselben page id durchgeführt. Es macht definitiv Sinn - und schafft Ordnung!

Das Rückgrat "Page Tree" wird also zur Stärke des Systems - sogar wenn hunderte von Web Applikationen innerhalb des Frameworks eine organisierte Struktur benötigen.

Erweitern von TYPO3 durch Web Applikationen dritter Anbieter?

Lassen Sie uns nun betrachten, wie wir TYPO3 durch eine Web Applikation erweitern können, die nicht mit dem System geliefert wird. Zu diesem Zweck verbinden wir uns aus dem EM (Extension Manager) mit dem TER (TYPO3 Extension Repository) und importieren, installieren und aktivieren ein Newsletter-Anmeldungssystem.

Einfügen eines Anmeldeformulars für Newsletter

Generell sollten Sie zunächst auf typo3.org nach der Applikation suchen, die Sie benötigen. Wenn Sie sie ausfindig gemacht haben können Sie mit der Installation beginnen.

Bei der Suche nach einem Newsletter-Anmeldungssystem haben wir eines gefunden, das unsere Anforderungen erfüllt. Der Autor war so freundlich und hat der Extension sogar eine Dokumentation beigefügt! (#1) Es ist wichtig, dass Sie dies verstehen: Die Dokumentation zu TYPO3 ist auf die einzelnen Extensions verteilt. Mit anderen Worten - wo finden Sie alle Informationen betreffend dem "Newsletter Subscription Module"? Auf typo3.org in Verbindung mit der Extension! Wenn Sie also nach Dokumentation suchen, müssen Sie häufig zunächst herausfinden, für welche Extension Sie Hilfe benötigen, um dann bei dieser Extension auf typo3.org zu suchen!

Import

Im Extension Manager können Sie eine Verbindung zum TER aufbauen und finden dort die Extension mit dem Schlüssel "da_newsletter_subscription":

Es dauert einige Sekunden und anschließend sehen Sie folgendes:

Nach einigen weiteren Sekunden wurde die Extension importiert und Sie sehen folgende Nachricht, wenn alles ohne Probleme abgelaufen ist:

In der Liste der verfügbaren Extensions - "Available extensions" - finden Sie nun das "Newsletter Subscription Module" unter "Frontend Plugins":

Installieren Sie es, bestätigen Sie die "Make updates" Meldung (welche notwendige Tabellen und Felder in der Datenbank automatisch erzeugt!)...

In der Liste der geladenen Extensions - "Loaded extensions" - sehen Sie nun, dass die neue Extension hinzugefügt wurde:

Okay, und wie benutze ich das jetzt?

Nun, wir können wirklich von Glück sagen, dass der Autor der Extension ein Handbuch geschrieben hat! Auf typo3.org können Sie sich das Inhaltsverzeichnis ansehen und finden dort eine detaillierte Anleitung für das Erstellen eines Anmeldeformulars, der Kategorien und wie Sie die Liste der angemeldeten Personen aus dem System wieder herausbekommen!

Natürlich werde ich das hier nicht alles wiederholen! Schließlich hatte es seinen Grund, ein Handbuch für diese Extension zu schreiben.

Aber ich habe kurzerhand eine neue Seite, ein Content Element, zwei Kategorien und die Auswahl für das Alter erzeugt:

Noch einige andere Dinge müssen erledigt werden (Änderungen im Template) aber Sie können das in dem Video sehen, in dem alles live vorgeführt wird. Und natürlich ist im Handbuch, das Sie auf typo3.org finden, im Abschnitt zur Konfiguration alles genau dokumentiert.

Das Ergebnis-Formular sieht folgendermaßen aus:

Der letzte Punkt - das Extrahieren der angemeldeten Personen aus der Liste - wird von einem Backend Modul übernommen, das mit dem Plugin der Extension installiert wurde:

Wie Sie sehen habe ich das neue Backend Modul aktiviert, anschließend die Seite, die die Web Applikation enthält und schließlich wurde die Liste angezeigt. Das demonstriert noch einen weiteren interessanten Aspekt - wir können die Newsletter Anmeldung nicht nur einer Seite sondern beliebig vielen Seiten hinzufügen und die Website würde immer noch wohlgeordnet erscheinen und hätte die volle Kontrolle über die Situation. Dank des Page Tree Frameworks!

Für weitere Informationen über fortgeschrittene Auswertungen der Newsletterempfänger, lesen Sie bitte das Handbuch für das  Newsletter Subscription Modul.

Die Sprache des Anmeldeformulars wechseln?

Viele Plugins wurden bereits in andere Sprachen als Englisch übersetzt. Trotzdem müssen auch alle neuen Plugins Englisch als primäre Sprache enthalten.

Wenn eine Übersetzung für die Extension verfügbar ist, können Sie sie aktivieren indem Sie das "Setup" Feld im Template Record Ihrer Website bearbeiten und folgende Zeile einfügen:

page.config.language = dk

Dies aktiviert die dänische (dk) Sprache und das Formular wird folgendermaßen aussehen:

Mehr über Template Records erfahren Sie im Abschnitt über Templates in diesem Tutorial. Zunächst belasse ich das Beispiel ersteinmal wie es ist, ohne weitere Erklärungen, denn das ist noch einmal eine Wissenschaft für sich! Sie werden es also erst später erfahren. Die einzelnen Schritte, die ich durchgeführt habe, sehen Sie ansonsten im Video!