我是新的在Prestashop,我有一个小问题在prestashop 1.7,我刚刚买了一个模块为我的订单,在详细信息页面上,当我启动smarty我可以看到数组$order_reference的一些信息,但当我去我的历史页面我不能访问这些信息,我不知道如何添加这些信息来访问它与我的页面历史记录,我必须创建一个函数的历史控制器或类与dbclass或你有任何其他的解决方案来添加我的订单的详细信息?
问题是我的信息在调用eo_orderreference的另一个表中,而我无法使用orders对象访问它。我想我需要写一个函数,但我在互联网上看到,在tpl文件上写它是错误的,我必须在我的类上这样做,但我不知道怎么做。这是我想要添加的信息
SELECT 'order_reference' FROM eo_orderreference 很抱歉,我无法上传图片,因为它包含了敏感的信息。
感谢您的宝贵时间。
发布于 2020-12-15 02:01:36
Smarty模板用于显示数据,您应该在调用TPL的PHP文件中执行查询,然后使用Prestashop
assign()方法将数据作为可以在前台显示的智能变量返回给您的TPL。
有关更多详细信息,请参阅here。
发布于 2020-12-29 23:20:53
您可以在模块或控制器内的函数中创建sql查询。
例如:
public function getAccessories($id_product)
{
// Your code
}在钩子或initcontent中,您可以调用查询sql上的函数并为其分配一个模板:
public function hookDiplayAccessoryExtraProduct($params)
{
$accessories = $this->getAccessories((int)$params['id_product']);
$this->context->smarty->assign(array(
'accessories_custom' => $accessories,
)
);
return $this->display(__FILE__, 'views/templates/front/accessory.tpl');
}https://stackoverflow.com/questions/65291108
复制相似问题