Dokumentation · Benutzerhandbuch

Arbeitsablauf für den Fahrzeugimport

Dieses Dokument beschreibt, wie Sie Fahrzeugangebote mit dem ADP Car Market Hub-Plugin in WordPress importieren. Live-Quellen (die AutoScout24-API, mobile.de oder carcuro), ein automatischer Feed, ein E-Mail-Posteingang und einmalige Datei-Uploads werden alle auf der zentralen Seite Verbindungen (CMH Center → Connections) verknüpft; das Ausführen und Planen von Importen verbleibt unter Import & Limits, und die Verwaltung importierter und ausstehender Fahrzeuge erfolgt weiterhin unter Car Importer. Dieses Dokument behandelt sowohl manuelle Importmethoden als auch den automatischen geplanten Import sowie Importoptionen, Änderungserkennung, Bildverarbeitung und Full Sync.

Wann Sie dieses Dokument lesen sollten

Lesen Sie dieses Dokument, wenn Sie:

  • Zum ersten Mal oder bei Bedarf einen Fahrzeugimport durchführen oder überwachen müssen.
  • Den Unterschied zwischen manuellem Import, Batch-Wizard und geplantem (automatischem) Import verstehen möchten.
  • Fehler bei Importen oder unerwartete Ergebnisse beheben müssen.
  • Verstehen möchten, wie das Plugin mit aktualisierten Angeboten, Bildern und gelöschten Fahrzeugen umgeht.

Für eine kurze tägliche Überprüfung des Importstatus siehe Tägliche Arbeitsabläufe.


Übersicht

Das Plugin ruft Fahrzeugangebote von einer verbundenen Live-Quelle – der AutoScout24-API, mobile.de oder carcuro – für alle konfigurierten Seller IDs ab und speichert jedes Angebot als WordPress-Beitrag des Custom Post Type as24ci_car. (Feed-, E-Mail- und Datei-Upload-Quellen sind ebenfalls verfügbar; siehe die Connections Reference.) Fahrzeug-Metadaten (Preis, Kilometerstand, Spezifikationen, Ausstattung, Bilder) werden in den Post-Meta und einer dedizierten benutzerdefinierten Datenbanktabelle gespeichert.

Es gibt drei Möglichkeiten, einen Import auszulösen:

  1. Einzelner Fahrzeugimport – Importieren oder erneutes Importieren eines einzelnen Angebots über den Reiter Car Importer.
  2. Batch-Wizard – Manuelles Ausführen eines vollständigen Imports aller Angebote mit Live-Fortschrittsüberwachung. Geeignet für den ersten Import oder eine erzwungene vollständige Aktualisierung.
  3. Automatischer geplanter Import – Läuft in einem konfigurierten Intervall über WP-Cron oder einen externen Server-Cron. Die empfohlene Methode für die laufende Synchronisation.

Alle drei Wege nutzen dieselbe zugrunde liegende Importlogik: Verbindung zur API herstellen, Angebote für jede konfigurierte Garage abrufen, mit der lokalen Kopie mittels Content-Hashes vergleichen und WordPress-Beiträge nach Bedarf erstellen oder aktualisieren.


Anforderungen oder Voraussetzungen

  • Eine Live-Quelle muss unter CMH Center → Verbindungen verbunden sein, bevor ein Import ausgeführt werden kann. Für AutoScout24 bedeutet dies gültige API-Zugangsdaten (API-Basis-URL, Seller ID(s), Client ID, Client Secret); für mobile.de bedeutet dies gültige API-Zugangsdaten (API-Benutzername, API-Passwort, optionale Kundennummer); für carcuro bedeutet es ein gültiges carcuro-Firmentoken. (Frühere Versionen konfigurierten die AutoScout24-Verbindung unter Einstellungen; alle Zugangsdaten für Datenquellen befinden sich jetzt auf der Seite Verbindungen.) Die eingegebenen Geheimnisse werden verschlüsselt gespeichert.
  • Die WordPress-Website muss in der Lage sein, ausgehende HTTPS-Verbindungen zur konfigurierten Quelle herzustellen.
  • Für Bildimporte muss das WordPress-Upload-Verzeichnis beschreibbar sein.
  • Für AutoScout24 muss mindestens eine Seller ID konfiguriert sein. Das Plugin liest die Option as24ci_seller_ids (kommagetrennte Liste von IDs).


Schritt-für-Schritt-Anleitung

Verbinden einer Live-Quelle (AutoScout24, mobile.de oder carcuro)

Bevor ein Import ausgeführt werden kann, müssen Sie eine Quelle auf der zentralen Seite Verbindungen verknüpfen. Das Hochladen einer einmaligen Datei aus Ihrer Garagen-Software (DMS) erfolgt auf derselben Seite.

  1. Navigieren Sie zu CMH Center → Verbindungen.
  2. Klicken Sie auf die Zeile der Quelle, die Sie verbinden möchten: - AutoScout24 — Geben Sie die API-Basis-URL, die Seller ID(s), die Client ID und das Client Secret ein. - mobile.de — Geben Sie Ihren API-Benutzernamen und Ihr API-Passwort ein (beide verschlüsselt gespeichert), optional eine Kundennummer, und aktivieren Sie den Schalter Sandbox (Testumgebung), wenn Sie eine Verbindung zur Testumgebung von mobile.de herstellen. mobile.de funktioniert genau wie carcuro: Die Spalten werden automatisch zugewiesen (kein manuelles Mapping), der Import und die Synchronisierung erfolgen über den zentralen Zeitplan, neue Fahrzeuge erscheinen und bei mobile.de gelöschte Fahrzeuge werden auch hier entfernt. - carcuro — Geben Sie Ihren carcuro-Firmen-Token ein und wählen Sie aus, welche Fahrzeuge synchronisiert werden sollen (Verfügbar / Alle / Verkauft). carcuro funktioniert genau wie AutoScout24: Die Spalten werden automatisch zugewiesen, neue Fahrzeuge erscheinen und bei carcuro gelöschte Fahrzeuge werden auch hier entfernt. Es macht keinen Unterschied, ob die Garage AutoScout24, mobile.de oder carcuro verwendet — jede Einstellung gilt für den gesamten Fahrzeugbestand.
  3. Speichern Sie die Quelle. Die Status-Pille auf der rechten Seite wechselt zu Verbunden, und die eingegebenen Zugangsdaten werden verschlüsselt auf dem Server gespeichert.
  4. Legen Sie unter Import & Limits fest, wie oft Importe ausgeführt werden sollen (siehe unten) — ein einziger zentraler Zeitplan steuert alle verbundenen Quellen.

Für Feed-, E-Mail- und Datei-Upload-Quellen sowie die vollständige Referenz aller Felder siehe die Referenz zu Verbindungen.

Importieren eines einzelnen Fahrzeugs

  1. Navigieren Sie zu CMH Center → Car Importer.
  2. Die Tabelle Ausstehende Fahrzeuge listet die über die API verfügbaren Fahrzeuge auf, die noch nicht in WordPress importiert wurden.
  3. Suchen Sie das Fahrzeug, das Sie importieren möchten.
  4. Klicken Sie neben dem Eintrag auf Importieren.
  5. Die Seite wird neu geladen und das Fahrzeug erscheint oben in der Tabelle Importierte Fahrzeuge.
  6. Um ein bereits importiertes Fahrzeug zu aktualisieren (beispielsweise nach einer Preisänderung bei Ihrer Live-Quelle), suchen Sie es in der Tabelle Importierte Fahrzeuge und klicken Sie auf Erneut importieren.

Ausführen des Batch-Wizards (manueller Vollimport)

Der Batch-Wizard ist die empfohlene Methode für den ersten Vollimport aller Fahrzeuge sowie für die Durchführung einer erzwungenen Aktualisierung ausserhalb des regulären Zeitplans.

  1. Navigieren Sie zu CMH Center → Import & Limits.
  2. Klicken Sie auf die Schaltfläche Import jetzt starten.
  3. Der Batch-Wizard startet und zeigt einen Live-Fortschrittsbalken mit folgenden Informationen: - Gesamtzahl der zu verarbeitenden Fahrzeuge. - Bisher verarbeitete Fahrzeuge. - Voraussichtliche verbleibende Zeit. - Aktuelle Aktion (Einfügen, Aktualisieren oder Überspringen).
  4. Der Assistent verarbeitet standardmässig ein Fahrzeug nach dem anderen (adaptive Batch-Grösse: 1–5 Fahrzeuge pro Schritt). Dies verhindert PHP-Ausführungszeitfehler auf Shared-Hosting-Systemen.
  5. Verwenden Sie die Schaltfläche Pause, um den Import vorübergehend anzuhalten. Klicken Sie auf Fortsetzen, um fortzufahren.
  6. Verwenden Sie die Schaltfläche Abbrechen, um den Import zu stoppen. Fahrzeuge, die im aktuellen Durchlauf bereits verarbeitet wurden, verbleiben in WordPress.
  7. Nach Abschluss des Assistenten zeigt eine Zusammenfassung die Anzahl der eingefügten, aktualisierten und übersprungenen Fahrzeuge sowie allfällige Fehler an.

Konfigurieren und Ausführen von geplanten automatischen Importen

Für eine laufende Synchronisierung aktivieren Sie die automatische Zeitsteuerung:

  1. Navigieren Sie zu CMH Center → Import & Limits.
  2. Aktivieren Sie Automatischer Import (das Kontrollkästchen oder den Schalter auf dem Tab).
  3. Wählen Sie das Importintervall: - Stündlich - Alle 6 Stunden - Zweimal täglich - Täglich - Benutzerdefiniert (mindestens 15 Minuten — konfigurieren Sie den Minutenwert im Feld für das benutzerdefinierte Intervall)
  4. Für tägliche und zweimal tägliche Zeitpläne können Sie optional die Startzeit festlegen.
  5. Speichern Sie die Automatisierungseinstellungen.
  6. WordPress WP-Cron löst nun Importe im konfigurierten Intervall aus, sobald die Website Besucherzugriffe verzeichnet.

Für Live-Websites wird ein Server-Cron empfohlen:

  1. Stellen Sie den Cron-Modus auf dem Tab „Import & Limits“ auf Server-Cron.
  2. Kopieren Sie die angezeigte Cron-Endpunkt-URL (die URL enthält ein Sicherheits-Token).
  3. Fügen Sie einen serverseitigen Cron-Job hinzu (beispielsweise über crontab), der die Endpunkt-URL mittels curl oder wget im gewünschten Intervall aufruft.
  4. Wenn Sie das Token neu generieren (Import & Limits → Token neu generieren), aktualisieren Sie Ihren Cron-Job mit der neuen URL.


Wie Importe funktionieren

Erkennung von Änderungen

Der Importer berechnet und speichert für jedes importierte Fahrzeug einen Content-Hash und einen Bild-Hash. Bei nachfolgenden Importläufen wird ein Fahrzeug übersprungen, wenn sich keiner der beiden Hashes geändert hat. Dies hält die Importläufe schnell, insbesondere bei grossen Beständen, bei denen die meisten Fahrzeuge unverändert sind.

Wenn ein Inserat an der Quelle aktualisiert wird (z. B. eine Preisänderung oder neue Bilder auf AutoScout24, mobile.de oder carcuro), stimmen die Hashes nicht mehr überein und das Fahrzeug wird in WordPress aktualisiert.

Import-Ergebniscodes

Jedes während eines Importlaufs verarbeitete Fahrzeug wird in eine von vier Kategorien eingeteilt:

ErgebnisBedeutung
EingefügtNeuer Fahrzeug-Beitrag in WordPress erstellt
AktualisiertBestehender Fahrzeug-Beitrag mit neuen Daten aktualisiert
ÜbersprungenFahrzeugdaten unverändert; keine Aktion erforderlich
FehlerEin Problem ist bei diesem Fahrzeug aufgetreten (siehe Registerkarte Logs)

Die Importzusammenfassung auf der Registerkarte Import & Limits und im Batch-Wizard zeigt diese Zahlen nach jedem Durchlauf an.

Bildimport und die Bildwarteschlange

  • Wenn Bilder importieren unter Import & Limits → Import-Standardwerte aktiviert ist, lädt der Importer Fahrzeugbilder von der API herunter und hängt sie an den WordPress-Beitrag an.
  • Max. Bilder pro Fahrzeug (Import & Limits → Import-Standardwerte) begrenzt, wie viele Bilder pro Inserat heruntergeladen werden (0 = unbegrenzt).
  • Bildwarteschlangen-Modus (standardmässig für Cron-/REST-Importe aktiviert): Bei geplanten Importen wird nur das erste Bild pro Fahrzeug sofort heruntergeladen. Alle verbleibenden Bilder werden einer permanenten Hintergrundwarteschlange hinzugefügt und asynchron vom Bildwarteschlangen-Worker verarbeitet, der etwa alle 5 Minuten läuft. Dies verhindert PHP-Ausführungszeitüberschreitungen bei grossen Importen.
  • Der Bildwarteschlangen-Worker verarbeitet bis zu 30 Bilder pro Batch.
  • Die aktuelle Warteschlangengrösse und der Worker-Status sind auf der Registerkarte System & Hilfe sichtbar.
  • Um die Bildwarteschlange sofort zu verarbeiten, klicken Sie auf der Registerkarte System & Hilfe auf Bildwarteschlange jetzt ausführen.
  • WebP-Konvertierung: Wenn unter Import & Limits → Import-Standardwerte aktiviert und GD oder Imagick verfügbar ist, werden Bilder beim Herunterladen in das WebP-Format konvertiert. Die Qualitätsstufe ist konfigurierbar (1–100, Standard 80).

Importsperre

Das Plugin verwendet eine Transient-basierte Laufsperre mit einer Gültigkeitsdauer (TTL) von ca. 40 Minuten. Wenn bereits ein Importlauf läuft, während ein zweiter Trigger eingeht (über WP-Cron, Server-Cron oder eine manuelle Schaltfläche), wird der zweite Trigger übersprungen und eine Meldung "bereits aktiv" protokolliert. Wenn die Sperre veraltet ist (älter als die TTL), wird sie automatisch aufgehoben, damit der nächste Lauf fortgesetzt werden kann.

Full Sync

Wenn Full Sync auf der Registerkarte Import & Limits aktiviert ist, vergleicht der Importer die von der Quelle zurückgegebenen Listing-IDs mit allen Fahrzeug-Beiträgen in WordPress. Jeder lokale Beitrag, dessen Listing-ID nicht im aktuellen Remote-Inserat enthalten ist, wird dauerhaft gelöscht – einschliesslich aller angehängten Bilder.

  • Aktivieren Sie Full Sync nur, wenn Sie möchten, dass der WordPress-Bestand die Live-Quelle (AutoScout24, mobile.de oder carcuro) exakt widerspiegelt.
  • Löschungen durch Full Sync werden im Plugin-Protokoll mit sync_deleted-Zahlen aufgezeichnet.
  • Wenn Full Sync deaktiviert ist, bleiben an der Quelle entfernte Fahrzeuge in WordPress, bis sie manuell gelöscht werden.

Wenn ein Fahrzeug dauerhaft gelöscht wird – sei es durch Full Sync, durch ein manuelles Dauerhaft löschen oder durch ein Massenlöschen –, existiert die URL seiner Detailseite (z. B. https://your-site.tld/cars/bmw-320i-2019/) nicht mehr. Suchmaschinen haben diese URL möglicherweise noch indexiert, und Kunden haben sie vielleicht als Lesezeichen gespeichert oder geteilt.

Anstatt diesen Besuchern einen Fehler "404 – Seite nicht gefunden" anzuzeigen (eine Sackgasse, die für die Garage unprofessionell wirkt), leitet das Plugin die alte URL automatisch auf eine vorgefilterte Suche nach derselben Marke und demselben Modell um, z. B. https://your-site.tld/cars/?make=bmw&model=320i. Der Besucher sieht sofort die am nächsten passenden, noch verfügbaren Fahrzeuge anstelle einer Fehlerseite.

Die Umleitung ist intelligent und bezieht sich immer auf Ihren aktuellen Bestand:

  • Wenn Sie noch passende Fahrzeuge dieser Marke und dieses Modells haben, landet der Besucher auf diesem gefilterten Ergebnis.
  • Wenn nicht, fällt die Weiterleitung auf alle Fahrzeuge dieser Marke zurück.
  • Wenn diese Marke komplett verschwunden ist, fällt sie auf die gesamte Fahrzeugliste zurück.

Da das Ziel immer eine Live-Suche ist (nie ein anderes spezifisches Fahrzeug), gibt es keine fehlerhaften oder verketteten Weiterleitungen, egal wie oft sich Ihr Bestand ändert. Dieses Verhalten wird über die Option Entfernte Fahrzeuge umleiten in den Einstellungen gesteuert (standardmässig aktiviert) und betrifft nur URLs, die andernfalls eine 404-Meldung zurückgeben würden. Es kann daher bedenkenlos aktiviert bleiben.

Status von Fahrzeug-Beiträgen

Importierte Fahrzeuge werden mit dem Beitragsstatus erstellt, der unter Import & Limits → Import-Standardwerte → Standard-Beitragsstatus konfiguriert ist (publish oder draft). Wenn ein Fahrzeug bei einem nachfolgenden Importlauf aktualisiert wird, ändert sich sein Beitragsstatus nicht – ein veröffentlichter Beitrag bleibt veröffentlicht.


Konfigurationsreferenz

EinstellungOrtBeschreibung
API-Basis-URLVerbindungenAutoScout24 API-Endpunkt (muss https:// enthalten)
Seller-ID(s)VerbindungenKommagetrennte Verkäufer-/Garagen-IDs (AutoScout24)
Client-IDVerbindungenOAuth-Client-ID für die AutoScout24 API
Client-SecretVerbindungenOAuth-Client-Secret für die AutoScout24 API (verschlüsselt gespeichert)
API-BenutzernameVerbindungenmobile.de API-Benutzername
API-PasswortVerbindungenmobile.de API-Passwort (verschlüsselt gespeichert)
KundennummerVerbindungenOptionale mobile.de Kundennummer
Sandbox (Testumgebung)VerbindungenVerbindet mobile.de mit der Testumgebung
carcuro Firmen-TokenVerbindungenFirmen-Token für die carcuro Live-Quelle (verschlüsselt gespeichert)
Standard-BeitragsstatusImport & Limits → Import-StandardwerteBeitragsstatus für neu importierte Fahrzeuge (publish oder draft)
Bilder importierenImport & Limits → Import-StandardwerteAktiviert oder deaktiviert den Download von Bildern während des Imports
Max. Bilder pro FahrzeugImport & Limits → Import-StandardwerteMaximale Anzahl heruntergeladener Bilder pro Inserat (0 = unbegrenzt)
In WebP konvertierenImport & Limits → Import-StandardwerteKonvertiert heruntergeladene Bilder in WebP (erfordert GD oder Imagick)
WebP-QualitätImport & Limits → Import-StandardwerteKompressionsqualität für die WebP-Konvertierung (1–100)
Auto-Import aktiviertImport & LimitsAktiviert den automatischen Importzeitplan über WP-Cron
ImportintervallImport & LimitsHäufigkeit des Zeitplans (stündlich, 6 Std., zweimal täglich, täglich, benutzerdefiniert)
Cron-ModusImport & LimitsWP-Cron (Standard) oder Server-Cron
Max. Fahrzeuge pro Cron-LaufImport & LimitsBegrenzt die Anzahl der pro geplantem Lauf verarbeiteten Fahrzeuge (0 = unbegrenzt)
Bildwarteschlange (Cron)Import & LimitsAktiviert den Hintergrund-Bildwarteschlangenmodus für Cron-/REST-Importe
Full SyncImport & LimitsLöscht lokale Fahrzeuge, die im aktuellen Remote-Inserat nicht mehr gefunden werden


Operational notes

  • Ein zentraler Zeitplan: Ein einziger Zeitplan unter Import & Limits steuert jede verbundene Quelle. AutoScout24, mobile.de und carcuro haben kein eigenes Intervall; die Feed- und E-Mail-Quellen bieten zusätzlich ihr eigenes Intervall an. Ein manueller Import kann jederzeit ausgeführt werden.
  • Mehrere Seller IDs: Für AutoScout24 läuft der Importer separat für jede konfigurierte Seller ID. Ein Fehler bei einer Garage stoppt die Importe für andere Garagen nicht.
  • Cron-Robustheit: Der Import-Runner erhöht das PHP-Ausführungszeitlimit bei Cron- oder REST-gesteuerten Durchläufen auf 300 Sekunden. Auf Hosting-Umgebungen, die set_time_limit() einschränken, wird dies möglicherweise nicht wirksam.
  • Batch-Wizard-Batchgrösse: Der Assistent passt seine Batchgrösse (1–5 Fahrzeuge pro Schritt) an, um innerhalb sicherer Ausführungszeitgrenzen zu bleiben.
  • Manuelle Auslösung bei aktivem Cron: Wenn der automatische Cron läuft, während Sie auf "Import jetzt starten" klicken, wird die manuelle Auslösung aufgrund der Ausführungssperre übersprungen. Warten Sie, bis der aktuelle Durchlauf abgeschlossen ist, oder löschen Sie die Sperre.
  • Import-Protokoll: Alle Import-Ereignisse (API-Aufrufe, eingefügte/aktualisierte/übersprungene/fehlerhafte Fahrzeuge, Bild-Downloads) werden in das Plugin-Protokoll geschrieben. Details finden Sie unter CMH Center → Logs.
  • Ausführliche Protokollierung: Wenn diese Option aktiviert ist, enthält das Protokoll Details zu jedem Fahrzeug und jedem Bild. Deaktivieren Sie dies in der Produktionsumgebung, um das Protokollwachstum zu verringern.

Troubleshooting

SymptomWahrscheinliche UrsacheÜberprüfung
Es erscheinen keine Angebote im Car ImporterDie Zugangsdaten der Quelle sind falsch oder die Quelle ist nicht erreichbarÜberprüfen Sie die Quelle unter "Connections" (ihr Status-Pill sollte "Connected" anzeigen); führen Sie den Verbindungstest unter "System & Help" aus
Import läuft, aber es erscheinen keine neuen FahrzeugeDer Standard-Beitragsstatus ist draft oder alle Angebote wurden bereits importiert und sind unverändertÜberprüfen Sie den Beitragsstatus in Import & Limits → Import Defaults; überprüfen Sie die Import-Zusammenfassung auf die Anzahl der übersprungenen Fahrzeuge
Bilder werden nicht heruntergeladenDer Bildimport ist deaktiviert, das Upload-Verzeichnis ist nicht beschreibbar oder der Bild-Queue-Worker läuft nichtÜberprüfen Sie Import & Limits → Import Defaults → Import images; überprüfen Sie unter "System & Help" den Upload-Status und die Queue-Grösse
Geplanter Import läuft nichtWP-Cron ist deaktiviert oder die Website hat keinen TrafficWechseln Sie zum Server-Cron oder überprüfen Sie, ob der Cron-Endpunkt erreichbar ist
Import zeigt viele FehlerAPI-Rate-Limiting, Netzwerkprobleme oder fehlerhafte AngebotsdatenÜberprüfen Sie die Registerkarte "Logs" auf Fehlerdetails; überprüfen Sie den API-Status bei Ihrem Integrationspartner
Fahrzeuge verschwinden unerwartetFull Sync ist aktiviert und die Fahrzeuge wurden an der Quelle gelöscht (AutoScout24, mobile.de oder carcuro)Überprüfen Sie die Logs auf sync_deleted-Einträge; deaktivieren Sie Full Sync, falls dies nicht beabsichtigt ist
Batch-Wizard stoppt oder läuft in ein TimeoutDas PHP-Ausführungszeitlimit ist zu niedrigÜberprüfen Sie unter "System & Help" den Wert für das Ausführungszeitlimit; kontaktieren Sie Ihren Hosting-Provider
Importsperre verhindert DurchläufeEin vorheriger Importdurchlauf wurde abgebrochen, ohne die Sperre freizugebenWarten Sie bis zu 40 Minuten, bis die Sperre automatisch abläuft, oder überprüfen Sie die Logs auf Details