Erstellen Sie ein variables Produkt und fügen Sie programmgesteuert neue Attributwerte in WooCommerce hinzu
WooCommerce bietet ein flexibles Framework für die Verwaltung von Produkten, einschließlich der Möglichkeit, Produkte zu erstellen Produktvariationen mit eindeutigen Attributwerten. In dieser Anleitung wird gezeigt, wie Sie programmgesteuert ein WooCommerce-Variablenprodukt erstellen und ihm neue Attributwerte hinzufügen.
1. Erstellen Sie ein variables Produkt:
Angenommen, Sie haben eine übergeordnete oder variable Produkt-ID, können Sie mit dem folgenden Code eine neue Produktvariante erstellen:
function create_product_variation($product_id, $variation_data) { // Get the parent variable product object $product = wc_get_product($product_id); $variation_post = array( 'post_title' => $product->get_name(), 'post_name' => 'product-' . $product_id . '-variation', 'post_status' => 'publish', 'post_parent' => $product_id, 'post_type' => 'product_variation', 'guid' => $product->get_permalink() ); // Insert the product variation $variation_id = wp_insert_post($variation_post); // Create an instance of the variation object $variation = new WC_Product_Variation($variation_id); ... }
2. Neue Attributwerte hinzufügen:
Für jedes Attribut und jeden Wert, den Sie hinzufügen möchten, müssen Sie prüfen, ob der Begriff vorhanden ist, und ihn erstellen, wenn nicht:
foreach ($variation_data['attributes'] as $attribute => $term_name) { $taxonomy = 'pa_' . $attribute; // The attribute taxonomy // Check if the term exists if (!term_exists($term_name, $taxonomy)) { wp_insert_term($term_name, $taxonomy); // Create the term } $term_slug = get_term_by('name', $term_name, $taxonomy)->slug; // Get the term slug // Set the attribute data in the product variation update_post_meta($variation_id, 'attribute_' . $taxonomy, $term_slug); }
3. Legen Sie zusätzliche Variationsdaten fest:
Legen Sie alle zusätzlichen Werte wie SKU, Preise und Lagerbestand fest, indem Sie die entsprechenden Methoden für das Variationsobjekt aufrufen:
$variation->set_sku($variation_data['sku']); $variation->set_price($variation_data['regular_price']); $variation->set_manage_stock(true); $variation->set_stock_quantity($variation_data['stock_qty']); ...
4. Speichern Sie die Variation:
Speichern Sie abschließend alle an der Variation vorgenommenen Änderungen:
$variation->save();
Beispielverwendung:
Zum Erstellen ein variables Produkt mit zwei Attributen und zwei Variationen:
$parent_id = 123; // Your parent variable product ID $variation_data_1 = array( 'attributes' => array( 'color' => 'Blue', 'size' => 'Small' ), 'sku' => 'VAR-1234-BLUE-SMALL', 'regular_price' => '29.99', 'stock_qty' => 20 ); $variation_data_2 = array( 'attributes' => array( 'color' => 'Green', 'size' => 'Medium' ), 'sku' => 'VAR-1234-GREEN-MEDIUM', 'regular_price' => '39.99', 'stock_qty' => 10 ); create_product_variation($parent_id, $variation_data_1); create_product_variation($parent_id, $variation_data_2);
Das obige ist der detaillierte Inhalt vonWie erstelle ich ein variables Produkt und füge programmgesteuert neue Attributwerte in WooCommerce hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!