首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我在magento中找不到catalog_product_save_after和catalog_product_save_before

我在magento中找不到catalog_product_save_after和catalog_product_save_before
EN

Stack Overflow用户
提问于 2013-02-25 14:08:31
回答 1查看 2.6K关注 0票数 1

嗨,我想写一个钩子。我创建了一个名为“畅销书”的类别和一个名为“畅销书”(YES/NO)的属性(默认为“NO”)(在一般情况下)。我想写一个钩子,当我将畅销书类别分配给任何产品时,它必须将属性畅销书更改为YES,当我们从畅销书类别中删除产品时,它必须将畅销书属性值更改为NO。但我发现不存在像magento v-1.7.0.2中的catalog_product_save_before和catalog_product_save_after这样的事件。如有任何帮助,请尽快回复。

EN

回答 1

Stack Overflow用户

发布于 2013-02-25 17:49:10

简短的回答

catalog_product_save_beforecatalog_product_save_after是可用的,您不会直接找到它。

长长的答案

如果您正在尝试搜索核心文件,那么您将找不到它。因为Magento对所有模型save_beforesave_after都使用动态事件分派。查看文件Mage_Core_Model_Abstract,您将找到以下代码行:

代码语言:javascript
复制
Mage::dispatchEvent($this->_eventPrefix.'_save_before', $this->_getEventData());
Mage::dispatchEvent($this->_eventPrefix.'_save_after', $this->_getEventData());

现在查看Mage_Catalog_Model_Product文件。您将找到值为catalog_product的受保护方法eventPrefix

代码语言:javascript
复制
protected $_eventPrefix      = 'catalog_product';

因此,在模型的调度事件中,目录产品的$this->_eventPrefix将是catalog_product_save_beforecatalog_product_save_after

这适用于正在扩展Mage_Core_Model_Abstract的所有模型的保存操作

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15061083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档