Du hast deinen AdBlocker an?

Es wäre ein Traum, wenn du ihn für t3n.de deaktivierst. Wir zeigen dir gerne, wie das geht. Und natürlich erklären wir dir auch, warum uns das so wichtig ist. Digitales High-five, deine t3n-Redaktion

t3n 6

Dynamische Erstellung eines TYPO3-Seitenbaums aus externen Datenbanken: 10.000 Seiten in 15 Minuten

    Dynamische Erstellung eines TYPO3-Seitenbaums aus externen Datenbanken: 10.000 Seiten in 15 Minuten

TYPO3 ist ein flexibles Framework für die Erstellung von Websites, die von einem oder mehreren Editoren gepflegt werden. In vielen Fällen existieren die Daten bereits in einer externen Datenbank. Mit der Extension „ml_dbsync“ können sie in der Datenbank verbleiben und direkt genutzt werden, um einen Seitenbaum und Content-Elemente zu erzeugen. Auf diese Weise ist es möglich, tausende von Seiten in kürzester Zeit zu erstellen.

Oft sind die Daten für eine Website bereits vorhanden, liegen in einer Datenbank vor und müssen für den Einsatz auf der Website lediglich gefiltert und minimal bearbeitet werden. Die Idee liegt also auf der Hand, Teile des Seitenbaums und verschiedene Content-Elemente automatisch zu generieren. Die Extension „ml_dbsync“ kann diese Aufgabe übernehmen und die Selektion und Transformation erledigen. Es gibt drei mögliche Einsatzszenarien für „ml_dbsync“:

  1. Einmaliger Import: Ist dann interessant, wenn zum Beispiel eine bestehende Website zu TYPO3 migriert und anschließend nur noch in TYPO3 bearbeitet werden soll.
  2. Manueller Import zu unregelmäßigen Zeitpunkten: Ist sinnvoll, wenn zwar eine externe Datenbank genutzt wird, die Webdaten aber nur zu nicht fest definierten Zeitpunkten aktualisiert werden müssen.
  3. Regelmäßige Synchronisation: Existiert zum Beispiel eine externe Produktdatenbank, die stets auf dem aktuellen Stand gehalten wird, kann sie durch regelmäßige Synchronisation als Datenquelle für den Produktbereich genutzt werden.

Die Arbeitsweise der Extension „ml_dbsync“ basiert auf den folgenden fünf Grundideen:

  1. Usability: Dynamisch erstellte Seiten und Content-Elemente müssen vom Benutzer schnell und einfach als solche erkannt werden.
  2. Sicherheit: Die Daten der externen Datenbank müssen in eine eigene Tabelle in TYPO3 kopiert werden. Dadurch ist für die externe Tabelle nur ein Lese-Zugriff notwendig und sensible Daten müssen nicht auf dem Webserver gespeichert werden.
  3. Flexibilität: Ein Benutzer muss in der Lage sein, dynamisch erzeugte Seiten und Content-Elemente zu bearbeiten oder zu löschen. Dies ist insbesondere dann wichtig, wenn die Inhalte als Einmal-Import verwendet werden.
  4. Integrität: Um die Datenintegrität zu gewährleisten, müssen die Daten der externen Datenbank stets Priorität haben. Das heißt, wenn ein Benutzer ein dynamisch erstelltes Content-Element ändert, muss es bei der nächsten Synchronisation trotzdem mit den Daten von der externen Datenbank überschrieben werden.
  5. Konsistenz: Die erstellten Seiten und Content-Elemente müssen auch nach wiederholter Synchronisation immer die gleiche ID erhalten. Das ist notwendig, damit zum Beispiel Links auf dynamisch erstellte Seiten weiterhin und nach jeder späteren Synchronisation funktionieren.

Die Funktionsweise von „ml_dbsync“ im Beispiel

Zur Veranschaulichung der Funktionsweise dient hier die Website der fiktiven Werkzeugfirma „Binford“. Die Website besteht aus den zwei Bereichen „The Company“ und „The Tools“. Aber nur der Bereich „The Tools“ soll dynamisch erzeugt werden. Dort werden die Seiten mit den Kategorien erzeugt und darunter die jeweiligen Werkzeugseiten mit allen Inhalten.

Bitte beachte unsere Community-Richtlinien

Schreib den ersten Kommentar!

Du musst angemeldet sein, um einen Kommentar schreiben zu können.

Jetzt anmelden