在 prestashop 1.7 中保存产品后获取类别时出现问题
Problem getting the category after saving a product in prestashop 1.7
在后台保存了新产品后,我需要向外部发送一些信息API。
我已经覆盖了 Product class 并在 add() 函数的末尾添加了代码,就在
之后
Hook::exec('actionProductSave', array('id_product' => (int) $this->id, 'product' => $this));
和 return 语句之前。所有信息均已正确发送(名称、价格等),但默认类别除外,由于某种原因,无论实际选择什么,默认类别始终作为主页类别发送。但是如果我去后台查看产品,就会出现正确的类别,而不是主页。
我试过从$this->id_default_category中获取类别,我也试过从数据库中选择它,结果是一样的。
我唯一的结论是类别会在执行 add() 函数后的某个时间更新,但我就是不知道更新在哪里。任何帮助我指出正确方向的帮助将不胜感激。
我建议你创建一个非常简单的模块
触发 hookActionProductUpdate。
这样就可以使用钩子参数($params)
获取产品数据并将其直接发送到外部 API
无需接触 Prestashop 核心。
您可以在这里找到更多信息:
https://devdocs.prestashop.com/1.7/modules/introduction/
在后台保存了新产品后,我需要向外部发送一些信息API。 我已经覆盖了 Product class 并在 add() 函数的末尾添加了代码,就在
之后Hook::exec('actionProductSave', array('id_product' => (int) $this->id, 'product' => $this));
和 return 语句之前。所有信息均已正确发送(名称、价格等),但默认类别除外,由于某种原因,无论实际选择什么,默认类别始终作为主页类别发送。但是如果我去后台查看产品,就会出现正确的类别,而不是主页。
我试过从$this->id_default_category中获取类别,我也试过从数据库中选择它,结果是一样的。
我唯一的结论是类别会在执行 add() 函数后的某个时间更新,但我就是不知道更新在哪里。任何帮助我指出正确方向的帮助将不胜感激。
我建议你创建一个非常简单的模块 触发 hookActionProductUpdate。 这样就可以使用钩子参数($params) 获取产品数据并将其直接发送到外部 API 无需接触 Prestashop 核心。
您可以在这里找到更多信息: https://devdocs.prestashop.com/1.7/modules/introduction/