我将在Prestashop模块中开发一个方法来获取产品列表并将结果作为JSON返回。
我获取产品列表没有问题,但是我不知道使用哪个钩子以及如何返回JSON结果而不是返回到Prestashop页面。
答案 0 :(得分:1)
最好的方法是在模块中使用特定的控制器。控制器的结果可通过URL获得。 (您的控制器类必须扩展" ModuleFrontController"类)
在模块控制器中,您应该通过以下方式更改默认构造函数:
public function __construct($response = array()) {
parent::__construct($response);
$this->display_header = false;
$this->display_header_javascript = false;
$this->display_footer = false;
}
并且,在你的" postProcess"方法,只需回显你想要的字符串,例如:
$json = json_encode( (array)$object );
最后,在模板中,您可以使用以下命令生成指向此控制器的链接:
{$link->getModuleLink('mymodule', 'mycontrolleurname', [], true)}