0

我正在编写一个自定义模块,其中我添加了一个自定义产品类型。我如何仅为该自定义产品类型编写观察者 catalog_product_save_after?

4

2 回答 2

1

您不能为该类型的产品添加观察者,但如果产品有效,您可以签入观察者。如果没有,那么什么也不做。

public function doSomething($observer){
   $product = $observer->getEvent()->getProduct();
   if ($product->getTypeId() != 'YOUR TYPE HERE'){
       return $this;
   }
   //your magic here
}
于 2013-10-11T14:12:30.973 回答
0

这些*_save_after事件是从Varien_Object类中触发的,并且取决于类是动态的。因此,对于所有产品类型,这将是相同的事件。

您仍然可以观察 catalog_product_save_after 事件并根据产品类型执行您的操作:

public function yourObserverMethod($observer)
{          
    $product = $observer->getEvent()->getProduct();
    if($product == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
        // Your stuff
    }

}
于 2013-10-11T14:18:17.800 回答