手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表2013年11月13日的文章

magento 中处理 catalog_product_prepare_save 行为

 最近在做magento二次开发,遇到个问题,即,我要针对商品的数据中的某些数据做二次处理。看了一下代码,发现在initProduct前有一个event事件:catalog_product_prepare_save,所以我想我只要覆盖这个方法就OK了。网上找了些资料,发现如果再绑定一个event则多个Event都会执行。于是,我就按照这个思路在config.xml里加入了events事件。

然后在Model下面加了Observer.php来监听事件。为了测试系统自有的event能够工作,我在系统默认的event里做了一下输出,发现确实有变化 了。所以证明我的思路还是正确的。当然,这也借鉴了网上的一些资料

config.xml里加入:

XML/HTML代码
  1. <adminhtml>  
  2.     <events>  
  3.         <catalog_product_prepare_save>  
  4.             <observers>  
  5.                 <xxx_web_observer>  
  6.                     <type>singleton</type>  
  7.                     <class>Xxx_Web_Model_Observer</class>  
  8.                     <method>prepareProductAuthor</method>  
  9.                 </xxx_web_observer>  
  10.             </observers>  
  11.         </catalog_product_prepare_save>  
  12.     </events>  
  13. </adminhtml>  

本来我class想写成xxxx/observer的,但死活通不过,我不知道是我写错了。还是。。最后写成详细的类名才OK。(也可能是因为不在系统目录下,而在local目录下的原因吧?)

Observer就不写了。参考core/mage/bundle/model/observer.php即可(本来有大小写的,我忽略了)