订单确认电子邮件中的 Opencart 产品图片
Opencart product Image in order confirmation email
我正在尝试让订购产品的图片出现在客户结账后发送的订单确认邮件中。该电子邮件的内容位于 order.tpl 文件中,其中包含产品名称的 $product['name'] 和产品型号的 $product['model'] 等内容。我不知道什么 variable/array 持有产品图像或如何实现它。
正在从 model/checkout/order.php/addOrderHistory()
发送电子邮件。您必须在产品循环中添加图像。然后在 .tpl
文件中,您必须插入新列并在其中显示产品图片。
您要查找的变量是图像
使用它如下。
<?php echo $product['image']; ?>
您可以在 opencart 网站上找到免费扩展。
是的。您必须修改 model/checkout/order/addOrderHistory()
功能。请注意,任何订单的产品都是从 order_product
table 中提取的。而且它不包含任何图像字段。为此,您必须创建一个功能,从 product
table 中获取产品图像,然后处理该图像以进行进一步处理。
例如,在 catalog/model/order
文件中创建任意函数。喜欢...
public function getProductImage($product_id){
$query = $this->db->query("SELECT `image` FROM `".DB_PREFIX."product` WHERE product_id = '".(int)$product_id."'");
if ($query->row) {
return $query->row['image'];
} else {
return false;
}
}
在foreach ($order_product_query->rows as $product) {
循环中调用此方法,如
$product_image = $this->getProductImage($product['product_id'])
.
然后在同一个循环中通过检查
调整图像大小
$this->load->model('tool/image');
if ($product_image) {
$product_image = $this->model_tool_resize($product_image, width, height);
}
然后在您的产品数组中添加这个,
$data['products'][] = array(
'image' => $product_image,
.....
);
并在您的 .tpl
文件中检查
if ($product['image']){
your design to display image
}
就是这样。
我正在尝试让订购产品的图片出现在客户结账后发送的订单确认邮件中。该电子邮件的内容位于 order.tpl 文件中,其中包含产品名称的 $product['name'] 和产品型号的 $product['model'] 等内容。我不知道什么 variable/array 持有产品图像或如何实现它。
正在从 model/checkout/order.php/addOrderHistory()
发送电子邮件。您必须在产品循环中添加图像。然后在 .tpl
文件中,您必须插入新列并在其中显示产品图片。
您要查找的变量是图像 使用它如下。
<?php echo $product['image']; ?>
您可以在 opencart 网站上找到免费扩展。
是的。您必须修改 model/checkout/order/addOrderHistory()
功能。请注意,任何订单的产品都是从 order_product
table 中提取的。而且它不包含任何图像字段。为此,您必须创建一个功能,从 product
table 中获取产品图像,然后处理该图像以进行进一步处理。
例如,在 catalog/model/order
文件中创建任意函数。喜欢...
public function getProductImage($product_id){
$query = $this->db->query("SELECT `image` FROM `".DB_PREFIX."product` WHERE product_id = '".(int)$product_id."'");
if ($query->row) {
return $query->row['image'];
} else {
return false;
}
}
在foreach ($order_product_query->rows as $product) {
循环中调用此方法,如
$product_image = $this->getProductImage($product['product_id'])
.
然后在同一个循环中通过检查
调整图像大小$this->load->model('tool/image');
if ($product_image) {
$product_image = $this->model_tool_resize($product_image, width, height);
}
然后在您的产品数组中添加这个,
$data['products'][] = array(
'image' => $product_image,
.....
);
并在您的 .tpl
文件中检查
if ($product['image']){
your design to display image
}
就是这样。