Javascript 在opencart订单历史记录中显示产品名称
在我的网站上,在订单历史记录(我的账户/订单历史记录)上显示产品名称是非常重要的,而在opencart中,只有显示的订单id。我已经部分解决了这个问题,但是我非常希望得到一些如何继续的提示。 该主题曾于2011年在北京开幕Javascript 在opencart订单历史记录中显示产品名称,javascript,php,opencart,Javascript,Php,Opencart,在我的网站上,在订单历史记录(我的账户/订单历史记录)上显示产品名称是非常重要的,而在opencart中,只有显示的订单id。我已经部分解决了这个问题,但是我非常希望得到一些如何继续的提示。 该主题曾于2011年在北京开幕 主要问题是文件order\u list.tpl无权访问controller order.php中的$product['name'](其定义在function info()中,而不是function index()),只有order\u info.tpl有权访问。我试图将部分代
$product['name']
(其定义在function info()
中,而不是function index()
),只有order\u info.tpl有权访问。我试图将部分代码从函数info()复制到函数index(),但它仍然无法访问该函数。有什么提示我该做什么吗?我是否需要更改模型文件中的某些内容?或者如何修改控制器文件(order.php)以允许order_list.tpl具有正确的访问权限如果您能提供任何帮助或提示,我们将不胜感激谢谢您的帮助,cske,我非常感谢。然而,我仍然无法使它工作。我还尝试了一些小的调整,但没有成功(但我不是js开发者)
$(function () {
$(".order-info a").each(function () {
var $me = $(this);
$me.load($me.attr('href'),function(){
$me.addClass("unloaded");
};
});
因此,我决定再次尝试修改控制器文件,使$product['name']
可以访问order\u list.tpl
(如问题中所述)。我可以通过添加
$products = $this->model_account_order->getOrderProducts($result['order_id']);
及
之后
foreach ($results as $result) {
这使得在orders数组中调用它成为可能
$this->data['orders'][] = array(
'product_name' => $product['name'],
不过,这是一个可行的解决方案:
1.每个订单只显示一个产品
2.它引起注意
Notice: Undefined index: order_id
该通知可以在管理区关闭
我同意这个解决方案,但显然它可能不是其他商店的正确解决方案。我使用只显示订单的第一个产品的解决方案,以了解如何显示订单的所有产品及其数量 而不是:
foreach ($products as $product) {
$this->data['products'][] = array('name'=> $product['name'],);
}
使用:
加:
然后,在order_list.tpl中,您可以获得包含以下数量的产品列表:
<?php echo $order['product_data']; ?>
foreach ($products as $product) {
$this->data['products'][] = array('name'=> $product['name'],);
}
$this->data['products'] = array();
$prod = "";
foreach ($products as $product) {
$prod .= $product['quantity'] . " x " . $product['name'] .'<br>';
}
$this->data['orders'][] = array(
'product_data' => $prod,
<?php echo $order['product_data']; ?>