【问题标题】:how status of Product in Magento get changed/saved?Magento 中产品的状态如何更改/保存?
【发布时间】:2012-06-01 12:48:42
【问题描述】:

我很想知道产品在 Magento 中的状态如何更改/保存?

要求-:

假设在 Magento 中启用了现有产品...现在如果 admin Disable 来自后端的特定产品,那么我需要通过 Magento 文件系统中的代码捕获该特定产品的 Id?

那么,我可以从哪里获得 Magento 代码中禁用产品的 ID?相同的文件位置和函数名称是什么?我怎样才能得到那个特定的 id?

请指导我...

【问题讨论】:

  • 同一个问题你会问多少个问题?
  • 我没有得到所需的答案....我需要 Magento 中相同的代码位置??
  • 山姆,你显然是新来的。你应该先用谷歌搜索一下,然后再在这里问他们。也试着问一个具体的问题,而不是一大堆问题。

标签: file magento status product


【解决方案1】:

我认为这里的反对票有点不公平。 op 只问一个问题 - 如何在产品保存后获取产品 ID 和状态。

@Sam - 在 Magento 中,您通常不会在代码中找到保存产品的确切位置,而是通过创建自定义模块并使用该模块内的 Magento 事件/观察器工具来挂钩事件。

查看本教程,它将指导您完成使用事件/观察者创建模块的过程:http://www.magentocommerce.com/wiki/5_-_modules_and_development/0_-_module_development_in_magento/customizing_magento_using_event-observer_method

与您的问题特别相关:您要查找的事件是catalog_product_save_after。

您的活动的 xml 看起来类似于:

<events>
  <catalog_product_save_after>
    <observers>
      <yourmodule>
        <class>Yourcompany_Yourmodule_Model_Observer</class>
        <method>catalog_product_save_after</method>
      </yourmodule>
    </observers>
  </catalog_product_save_after>     
</events>

您的观察者将与此类似:

class Yourcompany_Yourmodule_Model_Observer 
{
    public function catalog_product_save_after($observer)
    {
        $product = $obvserver->getEvent()->getProduct();

        $productStatus = $product->getStatus();
        $productId = $product->getId();
    }
}

注意 - 代码未经测试

【讨论】:

  • 投反对票是合理的。在 SO 上再次问同样的问题是社区认为不可接受的行为。如果 OP 对他得到的答案不满意,他应该编辑他原来的问题。
猜你喜欢
  • 2022-01-21
  • 2012-09-22
  • 2011-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
  • 1970-01-01
相关资源
最近更新 更多