Ustaw domyślne wartości produktu podczas dodawania nowego produktu w Magento 1.7
Stworzyłem Observer.php dla tego wydarzeniacatalog_product_new_action
<?php
class Starmall_Productobserver_Model_Observer
{
public function initProduct(Varien_Event_Observer $observer)
{
$product = $observer->getEvent()->getProduct();
$product->setWeight(1);
$product->setStatus(1);
$product->setTaxClassId(1);
$product->setPrice(1);
$product->setStockData(array(
'is_in_stock' => 1,
'qty' => 99999
));
}
}
Kiedy dodaję nowy produkt, waga, status, klasa podatkowa i cena są prawidłowo ustawione na moje wartości domyślne. Ilość i dostępność zapasów nie są ustawione.
Jak mogę ustawić te wartości zapasów w obserwatorze?
UWAGA: Używam na istniejącym ekranie Zarządzaj produktem zaraz po kliknięciuAdd Product
przycisk.
Następujące rozwiązanie działa. Dane zapasów są ustawione prawidłowo (patrz odpowiedź R.S.):
public function initProduct(Varien_Event_Observer $observer)
{
$product = $observer->getEvent()->getProduct();
$product->setWeight(1);
$product->setStatus(1);
$product->setTaxClassId(1);
$product->setPrice(1);
$product->setWebsiteIDs(array(1));
$stockItem = Mage::getModel('cataloginventory/stock_item');
$stockItem->assignProduct($product);
$stockItem->setData('is_in_stock', 1);
$stockItem->setData('qty', 1);
$product->setStockItem($stockItem);
}