Der WooCommerce-Adapter in ComBinder überträgt E-Katalog-Produkte vollständig in einen WooCommerce-Shop. Dieser Artikel beschreibt alle Datenfelder, Strukturen und Medien, die dabei übermittelt werden – von der Artikelnummer bis zur Variantenkonfiguration.
Für die grundlegende Einrichtung (Verbindungsdaten, Consumer Key, Export-Knoten) siehe WooCommerce Produkt-Upload.
Übersicht: Transferierte Datenbereiche
| Bereich | Inhalte |
|---|---|
| Identifikation | SKU (Artikelnummer), EAN (als Attribut) |
| Texte | Produktname, Langbeschreibung, Kurzbeschreibung |
| Preise | Regulärer Preis, Streichpreis (Pseudopreis / NRP) |
| Lager & Logistik | Lagerbestand, Lagerstatus, Gewicht, Maße |
| Merkmale / Attribute | Alle Produktmerkmale als WooCommerce-Attribute, Varianten-Konfiguratoren |
| Medien | Produktbilder (lokale MIME-Roots) |
| Varianten | Variable Products mit Konfiguratoren, Variantenpreise, Variantenbilder |
| Kategorien | Vollständige E-Katalog-Gruppenstruktur |
| Custom Tabs | Merkmale als eigene Produktreiter (Shop-Erweiterung) |
| Cross-Sellings | Verknüpfte Produkte per Merkmalswert (SKU-basiert) |
Sprache
Der WooCommerce-Adapter unterstützt den Export in genau einer Sprache. WPML oder andere Mehrsprachigkeits-Plugins werden derzeit nicht unterstützt. Die Exportsprache wird im Export-Knoten als einzelner BMEcat-Sprachcode konfiguriert (z. B. deu). Ist mehr als eine Sprache ausgewählt, bricht der Export mit einer Fehlermeldung ab.
Identifikation
- SKU – die Lieferanten-Artikelnummer (
supplierPid) wird als WooCommerce-SKU (sku) übertragen. Sonderzeichen werden automatisch bereinigt. - EAN – WooCommerce hat kein natives EAN-Feld. Die EAN wird daher als sichtbares Produktattribut mit dem Namen
EANübertragen (visible = true,variation = false).
Produkttexte
| WooCommerce-Feld | PIM-Quelle |
|---|---|
name |
Kurztext (DESCRIPTIONSHORT) in der konfigurierten Exportsprache |
description |
Langtext (DESCRIPTIONLONG), HTML wird übernommen |
short_description |
Standard: Kurztext; optional überschreibbar durch den Wert eines konfigurierten Merkmals (siehe Merkmale) |
Preise
Welcher Preistyp exportiert wird, ist im Export-Knoten konfigurierbar (Preistypen für Export).
- Regulärer Preis (
regular_price) – der konfigurierte Preis aus dem PIM-Produkt. - Streichpreis / Pseudopreis (
sale_price) – wird aus dem NRP-Preis (Non-Regular Price) des Produkts befüllt, sofern er kleiner als der reguläre Preis ist.
Staffelpreise werden von WooCommerce ohne Zusatz-Plugins nicht unterstützt. Der erste passende Preis (gemäß konfiguriertem Preistyp) wird übertragen.
Steuern werden derzeit nicht als tax_class gesetzt – Produkte erhalten die Standard-Steuerklasse des Shops.
Lager und Logistik
| PIM-Feld | WooCommerce-Feld |
|---|---|
Lagerbestand (CBPRODUCTSTOCK) |
stock_quantity |
| Lagerbestand > 0 | stock_status = "instock", purchasable = true |
| Lagerbestand = 0 | stock_status = "outofstock", purchasable = false |
| Gewicht | weight |
| Länge | dimensions.length |
| Breite | dimensions.width |
| Tiefe | dimensions.height |
Produktmerkmale / Attribute
Alle Produktmerkmale (PRODUCTFEATURES / FEATURE) werden als WooCommerce-Produktattribute (übertragen via /wc/v3/products/attributes) synchronisiert. Attribut-Namen werden aus dem Merkmal-Template-Namen aufgelöst; bei ETIM-Workspaces werden normierte ETIM-Merkmalsbezeichnungen und Werte verwendet.
Je nach Konfiguration im Export-Knoten kann ein Merkmal unterschiedlich behandelt werden:
| Konfiguration | Verhalten |
|---|---|
| Standard | Als sichtbares WooCommerce-Attribut (visible = true, variation = false) |
| Varianten-Konfigurator (automatisch) | Merkmale mit mehr als einem Wert über alle Varianten werden als Variantendimension gesetzt (variation = true) |
| Ausgeschlossen | Merkmal wird weder als Attribut noch anderweitig übertragen |
| Als Kurzbeschreibung | Merkmalswert überschreibt das Feld short_description |
| Als Kategorie | Merkmalswert wird als Kategoriename in WooCommerce gesucht und dem Produkt zugewiesen |
| Als Cross-Selling | Merkmalswert enthält SKUs (senkrechtstrich-getrennt), die als cross_sell_ids übertragen werden |
| Als Custom Tab | Merkmalswert erscheint als eigener Produktreiter (Registerkarte) im Shop – Name und Inhalt des Tabs stammen aus dem Merkmal |
Produktbilder
Alle MIME-Einträge des Produkts, die gültige Bildformate repräsentieren, werden als Produktbilder übertragen. Nicht unterstützte Formate werden übersprungen: tiff, tif, psd, pdf, URL-Einträge.
Wichtig: Nur Bilder aus lokalen MIME-Roots werden unterstützt. FTP-basierte MIME-Roots können derzeit nicht für den Bild-Upload verwendet werden.
Der Upload erfolgt über die WordPress-Media-API (/wp-json/wp/v2/media) mit einem eigenen Anwendungspasswort (getrennt vom WooCommerce Consumer Key). Bilder werden anhand ihres Dateinamens auf Duplikate geprüft:
- Duplikatcheck aktiv (Standard): Existiert ein Bild mit gleichem Dateinamen bereits im Shop, wird es direkt verknüpft – kein erneuter Upload.
- Immer neu hochladen: Option im Export-Knoten erzwingt den Upload auch bei vorhandenen Bildern.
Das erste Bild in der MIME-Liste wird als Hauptbild des Produkts gesetzt; bei Varianten kann genau ein Bild pro Variante übertragen werden.
Bild-Sync-Modus: Mit der Option Bilder aus Shop übertragen kehrt sich der Prozess um – Bilder werden aus dem WooCommerce-Shop gelesen und ins PIM importiert (statt exportiert).
Produktvarianten (Variable Products)
Hat ein Produkt im E-Katalog Varianten, wird der WooCommerce-Produkttyp automatisch auf variable gesetzt.
Konfigurator-Ermittlung
ComBinder analysiert alle Variantenprodukte und ermittelt, welche Merkmale die Varianten unterscheiden: Merkmale mit mehr als einem Wert über alle Varianten bilden Variantendimensionen (z. B. Farbe, Größe). Merkmale mit einheitlichem Wert bleiben normale Attribute.
Übertragene Variantenfelder
- SKU, regulärer Preis, Streichpreis
- Lagerbestand und Lagerstatus
- Gewicht und Maße
- Konfigurator-Werte (die konkreten Merkmalswerte der Variante, z. B. „Rot“, „XL“)
- Ein Bild pro Variante
Produkte mit Varianten, aber nur einer einzigen Variante, werden als einfaches Produkt exportiert.
Kategorien
Die E-Katalog-Gruppenstruktur wird vollständig als WooCommerce-Kategoriehierarchie übertragen:
- Im Export-Knoten wird mindestens eine Root-Kategorie konfiguriert (Format:
ID (Name)). Alle Strukturkategorien werden unterhalb dieser Wurzel angelegt. - Jede E-Katalog-Gruppe wird in WooCommerce gesucht oder neu erstellt.
- Produkte erhalten alle Kategorien, in denen sie im E-Katalog liegen.
- Zusätzlich können Merkmalswerte als Kategorie-Namen konfiguriert werden – ComBinder sucht dann die passende WooCommerce-Kategorie anhand dieses Werts.
- Bei ETIM-Workspaces werden ETIM-Klassennamen als Kategorienamen verwendet.
Custom Tabs
WooCommerce unterstützt (via Shop-Erweiterungen) zusätzliche Produktreiter. ComBinder kann konfigurierte Merkmale als eigene Tabs übertragen: Name und Inhalt des Tabs stammen aus dem Merkmalsnamen und -wert. Tabs werden einzeln pro Produkt hochgeladen.
Cross-Sellings
Merkmale, die im Export-Knoten als Cross-Selling-Quelle definiert sind, enthalten im PIM SKU-Werte anderer Produkte (senkrechtstrich-getrennt). ComBinder schlägt die IDs dieser Produkte im WooCommerce-Shop nach und trägt sie als cross_sell_ids am Produkt ein.
Export-Ablauf
- Authentifizierung: Consumer Key/Secret für WooCommerce-API, Anwendungspasswort für WordPress-Media-API
- Kategorie-Cache laden, E-Katalog-Gruppen synchronisieren
- Produkte aufbereiten und in Batches von bis zu 100 Produkten per
POST /wc/v3/products/batchhochladen - Varianten per
POST /wc/v3/products/{id}/variations/batchhochladen - Custom Tabs einzeln pro Produkt übertragen
Update-Verhalten: Bestehende Produkte werden anhand der SKU gefunden, zuerst vollständig gelöscht (inkl. aller Varianten) und dann neu angelegt. Es gibt kein partielles Update.
Option „Alle Produkte löschen“: Wenn aktiviert, werden vor dem Export alle Produkte im Shop entfernt.
Konfigurationsoptionen im Export-Knoten
| Option | Bedeutung |
|---|---|
| Webshop-Verbindung | Welcher konfigurierte WooCommerce-Shop angesprochen wird |
| Exportsprache | Genau ein BMEcat-Sprachcode (z. B. deu) |
| Root-Kategorien | Startpunkt(e) der Kategoriehierarchie im Shop (ID (Name)) |
| Preistypen | Welche Preistypen aus dem PIM als regulärer Preis übertragen werden |
| Merkmale ausschließen | Merkmals-IDs, die nicht in den Shop übertragen werden |
| Merkmal als Kurzbeschreibung | Merkmals-ID, deren Wert als short_description gesetzt wird |
| Merkmal als Kategorie | Merkmals-IDs, deren Werte als Kategorienamen gesucht werden |
| Merkmale als Custom Tabs | Merkmals-IDs, die als Shop-Produktreiter übertragen werden |
| Merkmale als Cross-Sellings | Merkmals-IDs mit SKU-Werten für verknüpfte Produkte |
| Bilder immer hochladen | Duplikatcheck deaktivieren, Bilder immer neu hochladen |
| Bilder aus Shop übertragen | Umgekehrter Modus: Bilder aus dem Shop ins PIM importieren |
| Alle Produkte löschen | Shop vor dem Export komplett leeren |
Unterschiede zum Shopware-6-Adapter
| Merkmal | WooCommerce | Shopware 6 |
|---|---|---|
| Mehrsprachigkeit | Nur 1 Sprache | Mehrere Sprachen per Bulk-Übersetzung |
| EAN | Als Produktattribut | Als natives Feld (ean) |
| Staffelpreise | Nicht unterstützt | Vollständig mit Regelzuordnung |
| FTP-Bilder | Nicht unterstützt | Unterstützt |
| Custom Tabs | Merkmale als Produktreiter | Nicht vorhanden |
| Cross-Sellings | Per Merkmalswert (SKU) | Per Product-Stream |
| SEO-Felder | Nicht direkt konfigurierbar | Meta-Titel/Beschreibung aus Merkmalen |
| Bild-Sync | Shop → PIM möglich | Nicht vorhanden |
| Authentifizierung | Consumer Key + Anwendungspasswort (getrennt) | OAuth2-Token |