OpenImmo Import für ProcessWire
ImmoImport ist ein ProcessWire Modul für die Immobilienbranche und ermöglicht die automatische Synchronisierung eines zentral gepflegten Objektbestandes mit der eigenen Website.
Nach Änderungen am Bestand wird ImmoImport im Hintergrund aktiv. Objekte werden im laufenden Betrieb angelegt, aktualisiert oder entfernt. Auf alle importierten Daten und Dateien kann über die Standard ProcessWire API zugegriffen werden. Der Datenaustausch erfolgt über den verbreiteten OpenImmo XML Standard.
Seiteninhalt » Überblick · Download · Details · Bilder · Performance · Anforderungen · Nutzung und Lizenzierung · Fragen und Antworten · Support
Jedes Objekt wird eine Seite
Es drängt sich auf. Alle Objekte im Bestand sollten auch auf der eigenen Website verfügbar sein. Zusätzlich und unabhängig von externen Plattformen. Ein Hindernis ist der Datenaustausch zwischen Immobiliensoftware oder Immobilienwebsite und der eigenen Website. ImmoImport löst diese Herausforderung für das ProcessWire CMF/CMS.
Installiert und eingerichtet wartet ImmoImport auf Aktualisierungen, prüft diese und aktualisiert den kompletten Bestand automatisch im eigenen System. Jede Immobilie wird eine Seite, welche jeweils hunderte Attribute enthält. Jeder Anhang wird einzeln als logische Unterseite angelegt. Durch die native Abbildung aller Daten in ProcessWire gestaltet sich der Zugriff darauf genauso einfach wie auf beliebige andere Inhalte im System auch.
Der OpenImmo Standard wird fast vollumfänglich unterstützt. ImmoImport versteht sich nach einem ersten Vollabgleich auch auf Teilabgleiche und hält den Objektbestand im System autark und zuverlässig aktuell.
Download
ImmoImport Modul für Processwire
- Version 1.3.3 // April 2023
- Erfordert mindestens ProcessWire 3.0.148 und PHP 7.2
- Empfohlen ProcessWire 3.0.184+ und PHP 8+
- Enthaltene Nutzungsbedingungen und Informationen zum Datenschutz (EULA.txt) sowie Anleitung (HILFE.txt) beachten
Einstellungen und Objektattribute
Die ImmoImport Konfiguration lässt sich komfortabel im Modul anpassen. Von der maximalen Pfadnamenlänge (URL) bis zu speziellen Debug Funktionen. Erforderliche logische Templates und Systemfelder werden automatisch über die ProcessWire API vom Modul selbst erstellt. So erstellte Felder werden mit einem frei wählbaren Präfix im Namen und per Tags von bestehenden Feldern separiert. Alles bleibt übersichtlich, nichts gerät durcheinander oder in Konflikt mit bereits bestehenden Feldern.
ImmoImport wird immer über den Aufruf einer ProcessWire Frontend Seite gestartet. Manuell und oder automatisch per Cronjob. Sich gegenseitig beeinflussende Kreuzimporte werden unterbunden.
Alle primären Objektattribute wie „Wohnfläche“ werden automatisch in Systemfeldern korrekten Typs gespeichert. Auf diese Felder können beliebige ProcessWire API Abfragen zugreifen. Zum Beispiel finde alle Kaufobjekte zwischen 100 und 300m² Wohnfläche. Alle 400+ Attribute inkl. aller Angaben in Systemfeldern werden zusätzlich immer vollständig in einem speziellen Einzelfeld „Tabellenliste“ in der Objektseite gespeichert. Hier wird jedes Objektattribut vermerkt, ebenfalls mit Angabe des jeweils korrekten Typs (Text, Zahl usw.). Damit ist der performante Zugriff auf sämtliche Objektattribute über ein einziges Feld möglich. Statt extrem viele Einzelfelder träge und unübersichtlich auszulesen.
ImmoImport arbeitet im Hintergrund. Darum ist es wichtig zu wissen, was wann und wie lange getan wurde. Logs von allen erfolgreichen Import Aktivitäten des Moduls lassen sich per E-Mail zustellen und oder werden als interne Log Seite in ProcessWire gespeichert.
Bilder
Performanter Datenimport
Die Verarbeitungsdauer eines Imports hängt von mehreren Faktoren ab. Viele Objekte mit vielen Anhängen neu zu erstellen dauert natürlich länger als wenige Objekte ohne Anhang zu aktualisieren.
Grundsätzlich gibt es keine speziellen Anforderungen an den Webserver. ImmoImport läuft auf Shared Webhosting Paketen wie auf einem Dedicated Server. Auf einem Standard Shared Webhosting Paket wurden folgende Zeiten ausgemittelt für den Datenabgleich:
- Neues Objekt mit 10 Anhängen anlegen und alle Objektattribute hinterlegen: ca. 0,2 Sekunden
- Oder hochskaliert, 100 solcher Objekte werden in ca. 20 Sekunden erstellt, oder 300 Objekte in ca. 60 Sekunden
- Objekt mit 10 Anhängen aktualisieren und alle Objektattribute auf neuen Stand bringen: ca. 0,1 Sekunden
- Oder hochskaliert, 100 solcher Objekte werden in ca. 10 Sekunden aktualisiert, oder 300 Objekte in ca. 30 Sekunden
Eine Begrenzung der maximalen Objektanzahl beim Import existiert nicht. Das Modul kann mit 3 oder 300 Objekten umgehen. Je größer der Objektbestand, um so performanter sollte der Webserver sein. Schneller Server gleich schneller Import.
Bei größeren Objektbeständen mit vielen Anhängen kann eine Optimierung der Einstellungen oder ein Hosting Wechsel notwendig werden. Für den Umgang mit großen Dateien sollte entsprechend PHP Speicher zur Verfügung stehen. Die maximale PHP Ausführungszeit sollte ebenfalls flexibel sein. Damit jeder Import (auch große) stets komplett durchlaufen wird.
Die Import Logik selbst achtet auf eine möglichst performante Verarbeitung. So werden bestehende Daten und Objekte möglichst erhalten, ohne stumpfes löschen und neu anlegen. Bestehende Anhänge werden nur dann aktualisiert, wenn sich etwas an den Anhängen geändert hat.
Minimale Anforderungen
ImmoImport funktioniert mit ProcessWire ab Version 3.0.148 und PHP 7.2. Empfohlen wird ProcessWire 3.0.184+ und PHP 8+. Der Feldtyp „Dezimal“ ist erforderlich für die korrekte Abbildung von Flächen- und Preisangaben in Systemfeldern. Dieser Feldtyp ist ab 3.0.184 im Core enthalten und wird in allen vorherigen Versionen als Zusatzmodul installiert (Info & Download).
Die zu importierenden Daten müssen im OpenImmo XML Format ab Version 1.2.6 vorliegen. Alle Anhänge und Objektdaten (XML) müssen in der übertragenen ZIP Datei enthalten sein (Standard).
Nutzung und Lizenzierung
Diese Software basiert auf dem Gedanken der fairen Nutzung. Sie kann kostenfrei ausführlich getestet und genutzt werden ohne Einschränkungen in der Grundfunktion. Der unlizenzierte Modus ist allerdings in der maximalen Anzahl der öffentlichen Objekte auf 10 beschränkt.
ImmoImport kann mit einem Freischaltschlüssel jederzeit in den lizenzierten Modus wechseln. Damit entfallen alle funktionalen Beschränkungen.
Die Lizenzgebühr pro Domain beträgt 975,80 € für deutsche Kunden (enthält 19,00 % USt. 820,00 € netto + 155,80 € USt.). Einmalgebühr, kein Abo, keine zeitlichen Limitierungen, alle Subdomains inklusive. Jede Lizenz ist an eine Domain (domain.tld) und die Hauptversionsnummer (aktuell 1.x) gekoppelt.
ImmoImport erspart Redaktionen wie Entwicklern massiv Zeit und Aufwand. Bitte unterstützen Sie die Entwicklung mit dem Erwerb einer Lizenz für Ihre Domain.
Fragen und Antworten
Support und Erweiterung
Unterstützung bei der Einrichtung ist ebenso möglich wie die Programmierung von maßgeschneiderten Frontend Templates.
Die Logik von ImmoImport kann bei Bedarf auf spezielle Bedürfnisse angepasst und um neue Fähigkeiten erweitert werden. Dabei werden Funktionen dynamisch ersetzt und oder hinzugefügt. Das Modul bleibt dadurch bis zu einem gewissen Grad der Anpassung normal updatefähig.