Variables Produkt mittles RestAPI anlegen

  • Hallo,

    ich möchte aus unserem ERP System Artikel im WooCommerce mittels RestApi anlegen. Soweit so gut, alles
    kein Problem. Aber bei den Varianten stehe ich ein wenig an. Kann mir jemand sagen, was ich in welcher Reihenfolge anlegen muss? Derzeit bin ich bei...

    1) Attribute anlegen (Farben)
    2) Terms zum Attribute hinzufügen ( Farben: rot, grün, blau, gelb)

    und jetzt? Erst den Mutterartikel und dann die Varianten. Wenn ich das richtig sehe, muss ich bei der Variante die Artikelnummer des Mutterartikels angeben, stimmt das?

    In der Variante muss ich dannn die ID der Mutter angeben? Hier Artikel ID: 22
    Muss ich hier schon unter der Propertie "attributes" die ID des Attributes angeben und die Optionen?

    curl -X POST https://example.com/wp-json/wc/v3/products/22/variations \

    Vielleicht kann mir das jemand erklären?! Vielen Dank
    lg
    Rene

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • das ist mir einfach zu viel text für ein forum

    8<-

    Hallo, das ist Bing. Ich kann Ihnen helfen, ein variables Produkt über REST API bei WooCommerce anzulegen. Um ein variables Produkt zu erstellen, müssen Sie zuerst die Attribute und die Terms für das Produkt definieren. Dann müssen Sie die Variationen für das Produkt erstellen und die Attribute und Preise für jede Variation festlegen. 1.

    Hier ist ein Beispielcode, wie Sie ein variables Produkt mit dem Attribut “Farbe” und den Terms “rot”, “grün”, “blau” und “gelb” erstellen können:

    // Erstellen Sie ein Array mit den Attributdaten $attribute_data = array( ‘name’ => ‘Farbe’, // Name des Attributs ‘slug’ => ‘farbe’, // Slug des Attributs ‘type’ => ‘select’, // Typ des Attributs ‘order_by’ => ‘menu_order’, // Sortierreihenfolge der Terms ‘has_archives’ => false // Ob das Attribut Archivseiten hat );

    // Erstellen Sie das Attribut mit der WooCommerce REST API $attribute = wc()->api->get_endpoint_data( ‘/wc/v3/products/attributes’, ‘POST’, $attribute_data );

    // Erhalten Sie die ID des erstellten Attributs $attribute_id = $attribute[‘id’];

    // Erstellen Sie ein Array mit den Term-Daten $term_data = array( array( ‘name’ => ‘Rot’, // Name des Terms ‘slug’ => ‘rot’ // Slug des Terms ), array( ‘name’ => ‘Grün’, ‘slug’ => ‘gruen’ ), array( ‘name’ => ‘Blau’, ‘slug’ => ‘blau’ ), array( ‘name’ => ‘Gelb’, ‘slug’ => ‘gelb’ ) );

    // Erstellen Sie die Terms für das Attribut mit der WooCommerce REST API foreach ( $term_data as $term ) { wc()->api->get_endpoint_data( “/wc/v3/products/attributes/$attribute_id/terms”, ‘POST’, $term ); }

    // Erstellen Sie ein Array mit den Produktdaten $product_data = array( ‘name’ => ‘Variables Produkt’, // Name des Produkts ‘type’ => ‘variable’, // Typ des Produkts ‘regular_price’ => ‘’, // Regulärer Preis des Produkts ‘description’ => ‘Ein variables Produkt mit verschiedenen Farben’, // Beschreibung des Produkts // Definieren Sie die Attribute für das Produkt ‘attributes’ => array( array( ‘id’ => $attribute_id, // ID des Attributs ‘name’ => ‘Farbe’, // Name des Attributs ‘position’ => 0, // Position des Attributs ‘visible’ => true, // Ob das Attribut auf der Produktdetailseite sichtbar ist ‘variation’ => true, // Ob das Attribut für Variationen verwendet wird // Definieren Sie die Optionen für das Attribut ‘options’ => array( ‘Rot’, ‘Grün’, ‘Blau’, ‘Gelb’ ) ) ) );

    // Erstellen Sie das Produkt mit der WooCommerce REST API $product = wc()->api->get_endpoint_data( ‘/wc/v3/products’, ‘POST’, $product_data );

    // Erhalten Sie die ID des erstellten Produkts $product_id = $product[‘id’];

    // Erstellen Sie ein Array mit den Variationsdaten $variation_data = array( array( // Definieren Sie die Attribute für die Variation ‘attributes’ => array( array( ‘id’ => $attribute_id, // ID des Attributs ‘option’ => ‘Rot’ // Option für das Attribut ) ), // Definieren Sie den Preis für die Variation ‘regular_price’ => ‘10.00’ ), array( // Definieren Sie die Attribute für die Variation ‘attributes’ => array( array( ‘id’ => $attribute_id, // ID des Attributs ‘option’ => ‘Grün’ // Option für das Attribut ) ), // Definieren Sie den Preis für die Variation ‘regular_price’ => ‘20.00’ ), array( // Definieren Sie die Attribute für die Variation ‘attributes’ => array( array( ‘id’ => $attribute_id, // ID des Attributs ‘option’ => ‘Blau’ // Option für das Attribut ) ), // Definieren Sie den Preis für die Variation ‘regular_price’ => ‘30.00’ ), array( // Definieren Sie die Attribute für die Variation ‘attributes’ => array( array( ‘id’ => $attribute_id, // ID des Attributs ‘option’ => ‘Gelb’ // Option für das Attribut ) ), // Definieren Sie den Preis für die Variation ‘regular_price’ => ‘40.00’ ) );

    // Erstellen Sie die Variationen für das Produkt mit der WooCommerce REST API foreach ( $variation_data as $variation ) { wc()->api->get_endpoint_data( “/wc/v3/products/$product_id/variations”, ‘POST’, $variation ); }

    Ich hoffe, dieser Code ist nützlich für Sie. Wenn Sie mehr über die WooCommerce REST API erfahren möchten, können Sie diese Seite besuchen.

    Mit offenen Augen träumen

  • Vielen Dank! genau so habe ich es mir fast gedacht und bereits umgesetzt! Funktioniert super!

    wow - schon umgesetzt? klasse! freut mich sehr.

    Darf ich fragen, für welche Wiwi du die Anbindung schreibst und in welcher Programmiersprache? SAP Business One?

    In der Regel benötige ich dafür immer ein paar Tage - vor allem, weil es meistens hinten und vorne nicht passt. Bilder für Optionen, Lagerbestand usw... Besonders lustig waren einmal Artikelnummern, die mit einer NULL begannen....

    Mit offenen Augen träumen

  • Danke, ich arbeite mit "abas-ERP" (http://www.abas.de). Ich kenne diese Software seit gut 20 Jahren. Hier ist eine eigene Scriptsprache integriert und mit dieser und Linux funktioniert das sehr gut und ist recht einfach. Das schwierigste bis dato waren tatsächlich jetzt diese Varianten und natürlich Dinge wie "ü,ä,ö,ß,.." etc. Aber ja nicht so dramtisch alles.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!