Bagaimanakah saya boleh mencipta variasi produk WooCommerce secara pemrograman dengan nilai atribut baharu?

Linda Hamilton
Lepaskan: 2024-11-11 04:47:02
asal
630 orang telah melayarinya

How can I programmatically create WooCommerce product variations with new attribute values?

Buat Variasi Produk WooCommerce Programmatik dengan Nilai Atribut Baharu

Soalan ini menangani cabaran mencipta variasi produk untuk produk pembolehubah yang sedia ada dalam WooCommerce 3 . Matlamatnya adalah untuk mengautomasikan proses ini sambil turut mengendalikan penciptaan nilai atribut baharu untuk variasi yang belum wujud.

Penyelesaian

Penyelesaian yang disediakan memanfaatkan PHP tersuai fungsi yang dipanggil create_product_variation(). Fungsi ini mengambil dua parameter:

  1. $product_id: ID siaran produk pembolehubah induk.
  2. $variation_data: Tatasusunan yang mengandungi atribut variasi, SKU, harga dan maklumat stok .

Fungsi bermula dengan mencipta objek siaran variasi produk. Objek ini kemudiannya digunakan untuk membuat siaran baharu, mewakili variasi. Seterusnya, contoh objek WC_Product_Variation dicipta dan digunakan untuk menetapkan nilai atribut untuk variasi.

Fungsi ini melelar melalui atribut variasi yang disediakan dalam tatasusunan $variation_data. Untuk setiap atribut, ia menyemak sama ada taksonomi yang sepadan wujud. Jika tidak, taksonomi dibuat menggunakan fungsi register_taxonomy().

Untuk setiap nilai atribut yang dinyatakan dalam $variation_data['attributes'], fungsi menyemak sama ada istilah itu sudah wujud. Jika tidak, ia mencipta istilah menggunakan wp_insert_term(). Slug istilah kemudiannya diperoleh dan digunakan untuk mengemas kini meta siaran untuk variasi.

Data variasi tambahan, seperti SKU, harga dan kuantiti stok, juga ditetapkan menggunakan kaedah yang sesuai. Ambil perhatian bahawa apabila menguruskan stok, kaedah set_manage_stock() mesti ditetapkan kepada benar.

Akhir sekali, objek variasi disimpan menggunakan kaedah save().

Contoh Penggunaan

Contoh yang disediakan menunjukkan cara membuat variasi produk dengan dua atribut ("saiz" dan "warna"), satu ciri unik SKU, harga dan kuantiti stok:

$parent_id = 746; // Or get the variable product id dynamically

// The variation data
$variation_data =  array(
    'attributes' => array(
        'size'  => 'M',
        'color' => 'Green',
    ),
    'sku'           => '',
    'regular_price' => '22.00',
    'sale_price'    => '',
    'stock_qty'     => 10,
);

// The function to be run
create_product_variation( $parent_id, $variation_data );
Salin selepas log masuk

Setelah kod ini dilaksanakan, ia akan mencipta variasi produk baharu dengan atribut, harga dan maklumat stok yang ditentukan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mencipta variasi produk WooCommerce secara pemrograman dengan nilai atribut baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan