ImmoImport

OpenImmo Import für ProcessWire

Symbol ImmoImport

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.

Lorem

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

  • Weiter
  • Zurück
Inhalt wird geladen…
Logo
Installation

Neue ProcessWire Installation

Modul installieren

ImmoImport Modul installieren

Einstellungen

Überblick Modul Einstellungen

Einstellungen

Einstellungen Modul Upload Daten

Templates anlegen

Templates im System anlegen

Einstellungen

Einstellungen Modul Exposé

Import bereit

System vorbereitet für Import

Import Log

Erstimport Ausgabe Log

Import Log

Erstimport Ausgabe Log

Seitenbaum

Seitenbaum nach Erstimport

Log im System

Log im System gesichert

Anhänge

Objekt mit Anhängen

Objekt Felder

Objekt Details Systemfelder

Objekt Felder

Objekt Details Systemfelder

Objekt Tabellenfeld

Objekt Tabellenliste mit allen Attributen

Objekt Frontend

Objekt Exposé Frontend Adresse

Anhang Titelbild

Objekt Anhang Titelbild

Test Immobilienliste

Test Frontend Ausgabe Immobilienliste

Test Exposé

Test Frontend Ausgabe Exposé

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

Zunächst einmal für die Immobilienbranche im weitesten Sinn. Das sind Makler oder Hausverwaltungen. Immer wenn es darum geht, Immobilienbestände abzugleichen und ProcessWire als System für die Website in Frage kommt. Oder bereits eingesetzt wird.

Weiterhin kann ImmoImport Agenturen und Webdesignern dabei helfen, dass komplizierte Thema Synchronisierung von Objekten in ihren Kundenprojekten zu meistern.

ImmoImport vereinfacht sehr viel, ist aber keine Fertiglösung für den absoluten Laien. Etwas Technikwissen ist für Konfiguration und Einrichtung nötig. Grundlagenwissen im Umgang mit ProcessWire ist ebenfalls nützlich.

Wie der Name schon sagt, kümmert sich das Modul primär um den Import und die korrekte Abbildung aller Objektdaten im System. Der Zugriff auf die Daten für die Ausgabe erfolgt dann frei über die ProcessWire API, wie bei allen anderen Inhalten im System auch.

Die Gestaltung von Frontend Templates (Auflistungen & Exposé, Suchmasken, Paginierungen, Bilder etc.) kann simpel bis hochkomplex ausfallen. ProcessWire typisch wird diese Ausgabe individuell definiert, je nach Bedarf. Mitgeliefert werden Beispiel Templates mit praktischen Lösungsansätzen und nützlichen Hilfsfunktionen als Basis und zur Inspiration.

Aktuell ist keine vollumfassende Komplettlösung für die Frontend Ausgabe von Objekten enthalten. Was nicht ausschließt das dies in Zukunft der Fall sein könnte.

Prinzipiell ja. Mehrsprachige Felder wie Titel werden beim Import stets nur in der ProcessWire Hauptsprache „default“ befüllt (normalerweise ist das deutsch). Vom Modul bearbeitete Seiten werden aber in allen Sprachen immer auf aktiv, also sichtbar, gesetzt.

OpenImmo XML enthält ausschließlich eine Sprachversion, im Normalfall deutsch. Alle Objektattribute wie Freitexte oder Bildtitel werden darum in einsprachigen Feldern gespeichert. Das bedeutet, ein spanisches Exposé wird immer die gleichen Freitexte ausgeben wie das deutsche Exposé.

Eine Lösung könnte sein, auf die Immobiliendarstellung in Zusatzsprachen komplett zu verzichten. Oder abhängig von der Sprache die Ausgabe in den Templates zu steuern und nur neutrale Attribute wie Flächenangaben oder Preise passend formatiert auszugeben. Auf Freitexte oder Bildtitel in Zusatzsprachen aber zu verzichten. Oder einfach damit zu leben, dass in der spanischen Sprachversion auch ein paar deutsche Textschnipsel zu sehen sind.

Dieses Modul richtet sich an das deutschsprachige Publikum. Darum sind Konfigurationsmenü, Felder, Hilfstexte und Nutzungsbedingungen für alle Benutzer in deutsch verfasst.

Bei Bedarf können alle Modul Texte über die ProcessWire „Site Translation“ in jede beliebige Backend Sprache übersetzt werden.

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.

Zum Seitenanfang