Zum Inhalt springen

TYPO3-Extension-Entwicklung

Wir entwickeln die TYPO3-Extension, die Ihnen fehlt.

Eine TYPO3-Extension ist kein Plugin von der Stange, sondern ein Stück Software, das genau eine Aufgabe in Ihrem Betrieb übernimmt — meistens die, die heute noch jemand von Hand macht. Wir programmieren sie, warten sie und passen sie für die nächste TYPO3-Version an.

<?php
declare(strict_types=1);

namespace CodeDimension\Fahrzeuge\Hook;

use TYPO3\CMS\Core\DataHandling\DataHandler;

final class ExportHook
{
    // Laeuft, wenn ein Fahrzeug im Backend gespeichert wird.
    public function processDatamap_afterDatabaseOperations(
        string $status, string $tabelle, $uid,
        array $felder, DataHandler $dh
    ): void {
        if ($tabelle !== 'tx_fahrzeuge_domain_model_fahrzeug') {
            return;
        }
        foreach ($this->kanaele as $kanal) {
            // Die Anzeigennummer kommt zurueck in den Datensatz.
            $nummer = $kanal->uebertragen((int)$uid);
            $this->merke((int)$uid, $kanal, $nummer);
        }
    }
}
Wann sich das lohnt

Fünf Anzeichen, dass der Standard nicht mehr reicht.

Wenn Sie bei zweien davon nicken, ist eine eigene Extension meistens billiger als das Weiterwursteln — nicht sofort, aber nach dem zweiten Jahr.

  1. 01

    Dieselben Daten stehen an zwei Stellen.

    Im Warenwirtschaftssystem und noch einmal von Hand auf der Website. Jede Änderung ist Doppelarbeit, und eine der beiden Seiten ist immer die falsche.
  2. 02

    Jemand tippt regelmäßig ab, was es schon digital gibt.

    Preislisten, Bestände, Termine, Objekte. Wenn Sie den Aufwand in Stunden je Woche beziffern können, lässt sich auch ausrechnen, ab wann sich eine Lösung trägt.
  3. 03

    Das Standardmodul kann fast alles — nur das eine nicht.

    Und dieses eine ist genau das, was Ihr Geschäft ausmacht. Ab hier wird jede Erweiterung des Fremdmoduls teurer als eine eigene.
  4. 04

    Ein Partner liefert Daten in einem festen Format.

    OpenImmo, BMEcat, DATANORM, GAEB, eine Börsen-Schnittstelle. Das Format ist da, es liest nur niemand ein.
  5. 05

    Ein Fehler passiert immer wieder an derselben Stelle.

    Vergessene Felder, falsche Preise, veraltete Angebote. Was ein Mensch nach dem zehnten Mal übersieht, übersieht ein Programm nie.

Trifft eines davon zu, lohnt sich ein Blick. Trifft keines zu, sagen wir Ihnen das auch — und Sie sparen sich das Projekt.

Aufwand schätzen lassen

Gebaut und im Einsatz

Zwei gebaute Schnittstellen — eine hinaus, eine herein.

Beide laufen seit Jahren in echten Projekten. Wischen oder oben umschalten, um von einer zur anderen zu kommen.

Schnittstelle 01 · hinaus

Ein Fahrzeug, einmal gepflegt. Drei Börsen, die nachziehen.

Die Extension hält die Fahrzeuge. Die Schnittstelle bringt sie hinaus — an drei Börsen, ausgelöst von einem Klick auf Speichern.

Die Extension

  • Fahrzeugdatensatz im TYPO3-Backend
  • Bilder, Preis, Ausstattung
  • Vorgeschriebene Verbrauchsangaben
  • Ausgabe auf der eigenen Website

Die Schnittstelle

Richtung
hinaus — von uns zu den Börsen
Kanäle
mobile.de, AutoScout24, WEBCAR
Auslöser
ein Klick auf Speichern
Rückweg
die Anzeigennummer je Börse

im selben Projekt wie die Website

Links das einmal gepflegte Fahrzeug, rechts mobile.de, AutoScout24 und WEBCAR; die Anzeigennummer läuft zurück

Der Knackpunkt steckt im Rückweg: Erst weil jede Börse ihre Anzeigennummer zurückmeldet, weiß die Extension beim nächsten Mal, welche Anzeige sie ändern oder zurückziehen muss.

Schnittstelle 02 · herein

Die Maklersoftware liefert. Die Website zieht nach.

Hier läuft es andersherum: Die Daten entstehen außerhalb, die Schnittstelle holt sie herein und packt sie aus.

Die Extension

  • Objektdatensatz mit allen Feldern
  • Bilder und Grundrisse
  • Energieausweis-Angaben
  • Übersicht und Detailseite

Die Schnittstelle

Richtung
herein — von der Maklersoftware zu uns
Format
OpenImmo-Paket
Auslöser
ein neues Paket im Eingang
Was passiert
auspacken, zuordnen, veröffentlichen

im selben Projekt wie die Website

Links das Datenpaket aus der Maklersoftware, rechts die Objektseite mit Fotos, Suchfeldern und Ansprechpartner

Ein Paket kommt an, wird ausgepackt und einsortiert — Bilder, Texte und Felder landen dort, wo die Website sie erwartet. Niemand tippt etwas ab.

Was möglich ist

Sechs Dinge, die eine Extension übernehmen kann.

Eine TYPO3-Erweiterung ist kein eigenes Produkt, das neben der Website steht — sie ist ein Bauteil in der Website. Sie nutzt deren Rechteverwaltung, deren Sprachen, deren Zwischenspeicher und deren Update-Weg. Das sind die Bereiche, in denen wir sie am häufigsten bauen.

  • Ein anderes System anbinden

    Warenwirtschaft, Maklersoftware, Fahrzeugbestand, Buchungssystem: Was dort gepflegt wird, landet auf der Website — oder umgekehrt. Der entscheidende Teil ist selten die Verbindung selbst, sondern die Übersetzung zwischen zwei Datenmodellen, die einander nicht kennen.

  • Eigene Datensätze mit eigener Maske

    Fahrzeuge, Objekte, Standorte, Stellenanzeigen, Referenzen — alles, was viele gleichartige Einträge hat, gehört nicht in Inhaltselemente, sondern in eine eigene Tabelle mit eigenem Formular. Danach pflegt die Redaktion Felder statt Layout.

  • Ein eigenes Backend-Modul

    Ein eigener Punkt im Menü, in dem genau das steht, was der Arbeitsalltag braucht: eine Liste, ein paar Filter, zwei Knöpfe. Wer nur Termine pflegt, muss nicht durch den Seitenbaum.

  • Wiederkehrendes automatisch erledigen

    Importe, Exporte, Benachrichtigungen, Aufräumarbeiten laufen als geplante Aufgabe im Hintergrund — nachts, stündlich oder alle fünf Minuten. Niemand muss daran denken, und im Fehlerfall meldet sich das System selbst.

  • Ausgabe nach Maß

    Ein Inhaltselement, das es im Standard nicht gibt: eine Zeichnung mit Beschriftung, ein Rechner, eine Gegenüberstellung. Es bekommt eine eigene Pflegemaske und eine eigene Vorlage — und verhält sich für die Redaktion wie jedes andere Element.

  • Bestehendes erweitern statt ersetzen

    Nicht jede Lücke braucht etwas Neues. Oft reicht ein Eingriff an der richtigen Stelle einer vorhandenen Extension — von außen, ohne deren Quelltext anzufassen. Nur so bleibt sie aktualisierbar.

Ihr Fall steht nicht dabei? Die Liste ist keine Auswahl, sondern eine Landkarte — beschreiben Sie uns den Ablauf, und wir sagen, in welche Ecke er fällt.

Aufgabe beschreiben

Woran der Aufwand hängt

Sechs Fragen entscheiden, was eine Extension kostet.

Einen Pauschalpreis nennen wir hier nicht, weil er über Ihren Fall nichts aussagt. Was den Aufwand treibt, lässt sich dagegen benennen.

Nicht jede Extension hat eine Schnittstelle. Viele zeigen nur, was im eigenen Haus gepflegt wird — für die entscheiden die ersten vier Fragen. Erst wenn Daten hinaus oder herein müssen, kommen die letzten beiden dazu.

Frage Hält den Aufwand klein Macht es aufwendiger
Wie viele Felder hat der Datensatz? Eine Handvoll, alle einfach. Viele — mit Abhängigkeiten, Dateien und Pflichtangaben.
Wie wird gepflegt? Eine Maske im vorhandenen Seitenbaum. Ein eigenes Backend-Modul mit Liste, Filter und Rechten.
Wie soll es auf der Website erscheinen? Eine Übersicht und eine Detailseite. Filter, Suche, Karte — und eine eigene Adresse je Eintrag.
Muss der Altbestand mit? Es fängt bei null an. Vorhandene Daten werden einmalig übernommen und geprüft.
Muss etwas hinaus oder herein? Nein — die Daten entstehen hier und bleiben hier. Dann gibt es auch keine Schnittstelle. Ja — und jede Gegenstelle bringt ihr eigenes Format mit, ihre eigene Anmeldung und ihren eigenen Rückweg.
Wie oft muss das laufen? Gar nicht — es gibt nichts zu übertragen. Alle paar Minuten — dann braucht es Wiederanlauf und eine Meldung im Fehlerfall.

In welche Spalte Ihr Vorhaben fällt, sehen wir in rund zwanzig Minuten am Telefon — kostenlos und unverbindlich. Trägt es sich nicht, sagen wir das.

Aufwand schätzen lassen

Aus den Antworten entsteht der Umfang, und aus dem Umfang der Festpreis — schriftlich, nach Positionen aufgeschlüsselt, bevor jemand programmiert. Was nicht drinsteht, wird auch nicht berechnet.

Ablauf

Vom ersten Gespräch bis zur laufenden Extension.

Der größte Teil der Arbeit steckt nicht im Programmieren, sondern davor: verstehen, was heute wirklich passiert. Deshalb steht das am Anfang.

  1. 01

    Wir sehen zu, wie es heute läuft.

    Nicht wie es laufen sollte, sondern wie es läuft. Wer macht was, an welcher Stelle, mit welchem Werkzeug — und wo geht regelmäßig etwas schief.
  2. 02

    Festpreis, bevor jemand programmiert.

    Sie bekommen den Umfang schriftlich und nach Positionen aufgeschlüsselt. Was nicht drinsteht, wird auch nicht berechnet.
  3. 03

    Wir bauen an einer Kopie.

    Ihre laufende Website bleibt unberührt. Sie sehen den Stand jederzeit auf einer eigenen Adresse und können mitreden, solange Ändern noch billig ist.
  4. 04

    Erst mit echten Daten, dann live.

    Eine Schnittstelle beweist sich nicht an Testdaten. Wir fahren sie mit Ihrem echten Bestand, bevor sie an die Gegenstelle darf.
  5. 05

    Übergabe, und dann laufen lassen.

    Sie bekommen den Code, eine Anleitung für die Redaktion und einen Ansprechpartner, der die Extension über TYPO3-Versionen hinweg mitzieht.

Das Erstgespräch kostet nichts und verpflichtet zu nichts — rund zwanzig Minuten, danach wissen Sie, woran Sie sind.

Aufwand schätzen lassen

Nach der Übergabe

Eine Extension ist kein Projekt, sondern ein Bauteil.

Eine Extension läuft weiter, wenn sich um sie herum etwas ändert. Genau dafür gibt es uns danach noch — und Sie bleiben Eigentümer des Codes, auch wenn Sie irgendwann jemand anderen damit betrauen.

Was für die Betreuung anfällt, stimmen wir vorher mit Ihnen ab.

TYPO3 bekommt eine neue Hauptversion
Dann muss die Extension mit. Wir ziehen sie mit, bevor etwas stehenbleibt.
PHP wird umgestellt
Der Hoster kündigt das an. Die Anpassung machen wir vorher, nicht hinterher.
Die Gegenstelle ändert ihr Format
Das entscheidet nicht Ihr Haus. Wir passen die Extension an, sobald die Änderung angekündigt ist.
Häufige Fragen

Was Kunden fragen, bevor die erste Zeile Code entsteht.

Etwas nicht dabei? Rufen Sie an — wir antworten auch am Telefon.

+49 5732 68 69 260
Brauchen wir überhaupt eine eigene Extension?

Nicht immer. Manches lässt sich mit Bordmitteln von TYPO3 einstellen, und für manches gibt es gepflegte Erweiterungen aus dem Verzeichnis, die passen. Eine eigene Extension lohnt sich dort, wo Ihr Ablauf die Regel vorgibt und nicht das Werkzeug — dann müssen Sie keine Kompromisse machen und hängen nicht an fremden Update-Zyklen. Ausführlicher haben wir das hier aufgeschrieben: Wann sich eine eigene TYPO3-Extension lohnt.

Was kostet eine eigene Extension?

Einen Pauschalpreis nennen wir nicht, weil er über Ihren Fall nichts aussagt. Woran der Aufwand hängt, steht auf dieser Seite in sechs Fragen. Aus den Antworten entsteht eine schriftliche Kosten- und Leistungsaufstellung nach Positionen, und daraus ein Festpreis, der feststeht, bevor jemand programmiert. Was nicht drinsteht, wird auch nicht berechnet.

Wie lange dauert das?

Den Termin nennen wir mit dem Angebot, wenn der Umfang steht. Vorher wäre jede Zahl geraten: Eine Anbindung an eine Gegenstelle mit dokumentiertem Format ist etwas anderes als ein eigenes Backend-Modul mit Rechteverwaltung und Altbestand.

Wem gehört der Quelltext?

Ihnen. Bei der Übergabe bekommen Sie den Code, eine Anleitung für die Redaktion und einen Ansprechpartner. Geschrieben ist der Code nach TYPO3-Standard und dokumentiert, damit ihn auch jemand anderes weiterführen kann. Sie bleiben Eigentümer, auch wenn Sie irgendwann jemand anderen damit betrauen.

Läuft die Extension weiter, wenn TYPO3 eine neue Hauptversion bekommt?

Nicht von allein — dafür gibt es uns danach noch. Wir ziehen die Extension mit: bei einer neuen TYPO3-Hauptversion, bei einer PHP-Umstellung und wenn die Gegenstelle ihr Format ändert. Was dafür anfällt, stimmen wir vorher mit Ihnen ab.

Läuft unsere Website weiter, während gebaut wird?

Ja. Wir bauen an einer Kopie, Ihre laufende Website bleibt unberührt. Den Stand sehen Sie jederzeit auf einer eigenen Adresse. Erst wenn die Extension mit Ihrem echten Bestand durchgelaufen ist, geht sie an die Gegenstelle und live.

Aufwand schätzen lassen

Sagen Sie uns, was heute von Hand läuft.

Zwei, drei Sätze genügen: welche Aufgabe es ist, wie oft sie vorkommt und welches System auf der anderen Seite steht. Wir sehen uns das an und melden uns. Wenn es sich nicht trägt, sagen wir das auch.

+49 5732 68 69 260

Diese Frage schützt das Formular vor automatischen Einsendungen.

Angebot anfordern

Das Formular wird geladen …

Datenschutzhinweise

Die Hinweise werden geladen …