ImmoImport

OpenImmo Import und Ausgabe 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.4.0 // Mai 2024
  • 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

Beispiel Ausgabe Objektliste

Beispiel Ausgabe Objektliste

Beispiel Ausgabe Kurzexposé

Beispiel Ausgabe Kurzexposé

Beispiel Ausgabe Exposé

Beispiel Ausgabe Exposé

Beispiel Ausgabe Exposé Anhänge

Beispiel Ausgabe Exposé Anhänge

Beispiel Ausgabe Exposé Attribute

Beispiel Ausgabe Exposé Attribute

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.

Objekte auf der Website

Verfügbare Objekte werden im Normalfall in die Website eingebunden. Für den Zugriff auf sämtliche Objektdaten wird die ProcessWire API benutzt. Alle Daten liegen klar geordnet im System vor, als Seiten mit Feldern. Der Zugriff darauf erfolgt so einfach wie auf jeden anderen ProcessWire Inhalt.

Die Präsentation von Objekten kann simpel bis komplex ausfallen. Von der Kurzliste ohne Bilder bis zur mehrsprachigen Präsentation mit Suchmasken und spezieller Aufbereitung von Objektattributen plus Karten.

Eine Art „Standard Theme“ ergibt in der Welt von ProcessWire wenig Sinn. Vielmehr werden hilfreiche Funktionen für die neutrale Einbindung von Objektdaten und Anhängen in beliebigen Templates mitgeliefert. Jeweils mit Beispielen und Erklärungen zum besseren Verständnis (in deutsch). Durch Anpassung und Erweiterung lassen sich schnell alle denkbaren Präsentationen umsetzen und jedes Detail optimieren. Vom Bildzuschnitt bis zur Festlegung der Nachkommastellen einer Zahl. Enthaltene Funktionen & Beispiele:

  • Objekte zählen, nach beliebigen Attributen suchen und listen
  • Titelbild in Anhängen finden und ausgeben
  • Anhänge wie Bilder finden und ausgeben
  • Formatierung von Preisen, Zahlen und Flächenangaben
  • Kurzexposé und Energiepass aus Objektattributen erzeugen
  • Objektattribute einzeln abfragen, verarbeiten und ausgeben
  • Objektattribute frei in Listen zusammenfassen und formatiert ausgeben
  • die wichtigsten Objektattribute in bereits vordefinierten Listen (Basisdaten)
  • eigene Objektattribute beliebig definieren und formatiert ausgeben

ImmoImport 1.3.6+ enthält Funktionen für die Zuordnung, Aufbereitung und formatierte Ausgabe der 400+ Objektattribute.

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 1.023,40 € für deutsche Kunden (enthält 19,00 % USt. 860,00 € netto + 163,40 € 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.

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