как opencart сделать письма с уведомлением о заказе администатору с полными данными с счетом так и заказчику?
в файле c
atalog/model/checkout/order.php найдите
примерно в 497 строке
$mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
$mail->setHtml($html);
$html2=$html;
$mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
$mail->send();
добавьте
$html2=$html;
и ниже добавьте в 558 строке
$mail->setSender($order_info['store_name']);
$mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
$mail->setText(html_entity_decode($text2, ENT_QUOTES, 'UTF-8'));
$mail->setHtml($html2);
$mail->send();
$mail->setHtml($html2);
измените файл
/model/checkout/order.php
1. $order_product_query = $this->db->query("SELECT * , o.quantity AS quantity FROM " . DB_PREFIX . "order_product ".
" o LEFT JOIN " . DB_PREFIX . "product p ON (p.product_id = o.product_id) ".
"WHERE o.order_id = '" . (int)$order_id . "'");
добавьте JOIN и алиасы в запросы
2. $this->load->model('tool/image'); подключите модель загрузки метода редактирования размеров изображения
3. добавьте переменную с картинкой $template->data['products'][] = array(
'name' => $product['name'],
'model' => $product['model'],
'option' => $option_data,
'image' => $this->model_tool_image->resize($product['image'], 190, 190),
4. в файле
/catalog/view/theme/вашатема/template/mail/order.tpl добавьте
вывод картинке в письмо
после
в файле /catalog/model/tool/image.php opencart
в самом конце добавьте
urlencode
if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {
return HTTPS_IMAGE . urlencode($new_image);
} else {
return HTTP_IMAGE . urlencode($new_image);
}
если папки русскими буквами то все равно не показываются картинки видимо проблемы со
слешем / заменен urlencode на
%2F а лучше так его и оставить
/
и
пробелом он заменен urlencode на
+ а лучше
%20
поэтому лучше так сделать
return HTTP_IMAGE . str_replace('+', '%20', str_replace('%2F', '/', urlencode($new_image)));
Комментарии
Оставить комментарий
Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)
Термины: Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)