Saya sedang berupaya membuat opsi khusus untuk produk saya secara otomatis setiap kali produk dibuat. Apa yang saya dapatkan sejauh ini adalah seorang pengamat yang menyalakan catalog_product_save_before
acara dan menjalankan kode berikut:
//check that we haven't made the option already
$options = $product->getProductOptions();
foreach ($options as $option) {
if ($option['title'] == 'Auto Date & Time' && $option['type'] == 'date_time' && !$option['is_delete']) {
//we've already added the option
return;
}
}
$options[] = array(
'title' => $product->getDateLabel(),
'type' => 'date_time',
'is_require' => 1,
'sort_order' => 0,
'is_delete' => '',
'previous_type' => '',
'previous_group' => '',
'price' => '0.00',
'price_type' => 'fixed',
'sku' => ''
);
$product->setProductOptions($options);
$product->setCanSaveCustomOptions(true);
//this line doesnt make sense here, but it works ... kinda
$product->save();
Jika saya meninggalkan $product->save()
di, saya berakhir dengan 2 opsi khusus yang dibuat, meskipun saya sudah memeriksa untuk memverifikasi ke-2 kalinya acara kebakaran pernyataan kembali disebut di loop foreach.
Jika saya mengeluarkannya. Tidak ada opsi khusus yang dibuat.
Bisakah seseorang memberi tahu saya apa yang saya lakukan salah?
Saya bekerja dengan Magento 1.7