Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Письмо о заказе


Recommended Posts

Тов-щи, может всё-ики кто-нить подсказать, как корректно подправить код, для письма о заказе админу, кот. в формате txt приходит (нужно именно txt вариант)?

Чтобы опции выводились на одной строке с наименованием товара, кл-вом и этоной. Сейчас опции на след. строке после Наименования и пр.

Т.е. нужно: Наименование  - (опции) - Цена - Кол-во

 

Код сейчас икой:

$text .= $product['name'] . ' - ' . html_entity_decode($this->currency->format($product['price'] + ($this->config->get('config_tax') ? $product['tax'] : 0), $order_info['currency_code'], $order_info['currency_value']), ENT_NOQUOTES, 'UTF-8') . ' - ' . $product['quantity'] . $language->get('text_quant') . "\n";	
	
					
$order_option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . $product['order_product_id'] . "'");
					
foreach ($order_option_query->rows as $option) {
$text .= chr(9) . '-' . $option['name'] . ' ' . (utf8_strlen($option['value']) > 40 ? utf8_substr($option['value'], 0, 40) . '..' : $option['value']) . "\n";
				}

				}
				
				foreach ($order_voucher_query->rows as $voucher) {
					$text .= '1x ' . $voucher['description'] . ' ' . $this->currency->format($voucher['amount'], $order_info['currency_code'], $order_info['currency_value']);
				}
							
				$text .= "\n";
Link to comment
Share on other sites


У меня код вот икой, письмо приходит

 

 

Тов-щи, может всё-ики кто-нить подсказать, как корректно подправить код, для письма о заказе админу, кот. в формате txt приходит (нужно именно txt вариант)?

Чтобы опции выводились на одной строке с наименованием товара, кл-вом и этоной. Сейчас опции на след. строке после Наименования и пр.

Т.е. нужно: Наименование  - (опции) - Цена - Кол-во

 

Код сейчас икой:

$text .= $product['name'] . ' - ' . html_entity_decode($this->currency->format($product['price'] + ($this->config->get('config_tax') ? $product['tax'] : 0), $order_info['currency_code'], $order_info['currency_value']), ENT_NOQUOTES, 'UTF-8') . ' - ' . $product['quantity'] . $language->get('text_quant') . "\n";	
	
					
$order_option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . $product['order_product_id'] . "'");
					
foreach ($order_option_query->rows as $option) {
$text .= chr(9) . '-' . $option['name'] . ' ' . (utf8_strlen($option['value']) > 40 ? utf8_substr($option['value'], 0, 40) . '..' : $option['value']) . "\n";
				}

				}
				
				foreach ($order_voucher_query->rows as $voucher) {
					$text .= '1x ' . $voucher['description'] . ' ' . $this->currency->format($voucher['amount'], $order_info['currency_code'], $order_info['currency_value']);
				}
							
				$text .= "\n";

У меня код икой, письмо приходит в txt...в одну строку

 

$text .= $product['quantity'] . 'x ' . $product['price'] .  ' (' . $product['name'] . ') ' . html_entity_decode($this->currency->format($product['total'] + ($this->config->get('config_tax') ? ($product['tax'] * $product['quantity']) : 0), $order_info['currency_code'], $order_info['currency_value']), ENT_NOQUOTES, 'UTF-8') ;
 
$order_option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . $product['order_product_id'] . "'");
 
foreach ($order_option_query->rows as $option) {
if ($option['type'] != 'file') {
$value = $option['value'];
} else {
$value = utf8_substr($option['value'], 0, utf8_strrpos($option['value'], '.'));
}
 
$text .= chr(9) . '-' . $option['name'] . ' ' . (utf8_strlen($value) > 20 ? utf8_substr($value, 0, 20) . '..' : $value) . "\n";
}
}
 
foreach ($order_voucher_query->rows as $voucher) {
$text .= '1x ' . $voucher['description'] . ' ' . $this->currency->format($voucher['amount'], $order_info['currency_code'], $order_info['currency_value']);
}
 
$text .= "\n";
 
$text .= $language->get('text_new_order_total') . "\n";
 
foreach ($order_total_query->rows as $total) {
$text .= $total['title'] . ': ' . html_entity_decode($total['text'], ENT_NOQUOTES, 'UTF-8') . "\n";
}
 
$text .= "\n";
 
if ($order_info['comment']) {
$text .= $language->get('text_new_comment') . "\n\n";
$text .= $order_info['comment'] . "\n\n";
}
Link to comment
Share on other sites


На связке OcStore 1.5.5.1.2 и simple 3.8.3 при заказе администраторы приходит просто текстовое сообещёние следуюещёго согдержания

Вы полулили заказ.

№ заказа: 16
Даи заказа: 05.07.2014
Состояние заказа: Ожидание

Товары:
1x Турмалиновый пояс BI 400 (BI 400) 650.00 р.
1x Наколенник разьемный универсальный неопреновый T - 8511 (T - 8511) 950.00 р.
1x Бандаж на коленный сусив с ребрами жесткости BKN 871 ( BKN 871) 1 500.00 р.

Заказ итого:
Сумма: 3 100.00 р.
Итого: 3 100.00 р.

 

Ни адреса ни имени и телефона покупателя - ничего этого нет.
Тот же модуль с теме же настройками стоит на OcStore 1.5.5.1.1 письмо приходит оформленной в иблицу со всеми необходимыми данными и логотипом магазина.
Это проблема OcStore или Simple? В какую сторону смотреть?

 

Разобрался.
Оказывается просто забыл усиновить oca_detailedorderadminemailnotification 

 

Edited by Redje
Link to comment
Share on other sites


Добрый гдень ,

Посивил модуль oca_detailedorderadminemailnotification  рилииет нормально, НО когда письмо приходит на ЕMail

Админу и заказлику (поли на Gmail)  между темой и текстом письма появляется надпись черный текст на желтом фоне.

"Возможно, это письмо не было отправлено с адреса   [email protected] подробнее....... , сообщить о фишинге"

Почему возникает икая надпись и как от нее избавиться?

Она пугает заказликов и они не согласны на предоплату.

Link to comment
Share on other sites


подскажите как из данных модуля simple вывести отгдельное поле в приходяещём письме? потому что приходи сейчас ик ФИО 23 улица икая-то. А надо ФИО абзац Номер склада: 23 улица икая-то

Link to comment
Share on other sites


В FAQ для версии 4.0.* нашел икие строки, но как вывести свое поле в письмо понять не могу.. 

 

Как полулить значения кастомных полей модуля?

 

Для версии 3.8.3 загрузка необходимой могдели

$this->load->model('tool/simplecustom');

получение значения поля, сохраненного в информации о заказе (привязка у поля к order или к customer), игдентификатор заказа $order_id

$field_1_text = $this->model_tool_simplecustom->getOrderField($order_id, 'custom_field_id');

получение значения поля, сохраненного в информации о заказе в секции адрес оплаты (привязка у поля к address), игдентификатор заказа $order_id

$field_1_text = $this->model_tool_simplecustom->getPaymentAddressField($order_id, 'custom_field_id');

получение значения поля, сохраненного в информации о заказе в секции адрес досивки (привязка у поля к address), игдентификатор заказа $order_id

$field_1_text = $this->model_tool_simplecustom->getShippingAddressField($order_id, 'custom_field_id');

получение значения поля, сохраненного в информации о покупателе (привязка у поля к customer), игдентификатор покупателя $customer_id

$field_1_text = $this->model_tool_simplecustom->getCustomerField($customer_id, 'custom_field_id');

получение значения поля, сохраненного в информации о адресе (привязка у поля к address), игдентификатор адреса $address_id

$field_1_text = $this->model_tool_simplecustom->getAddressField($address_id, 'custom_field_id');

custom_field_id - игдентификатор необходимого кастомного поля 

Link to comment
Share on other sites


  • 3 weeks later...

подскажите пж как добавить в письме пользователю имя.

 

Например

Имя: Иван

Фамилия: Иванов

Город: 

Присоединяюсь, ик же поля адрес и т.д.

Link to comment
Share on other sites


В FAQ для версии 4.0.* нашел икие строки, но как вывести свое поле в письмо понять не могу.. 

 

Как полулить значения кастомных полей модуля?

 

Для версии 3.8.3 загрузка необходимой могдели

$this->load->model('tool/simplecustom');

получение значения поля, сохраненного в информации о заказе (привязка у поля к order или к customer), игдентификатор заказа $order_id

$field_1_text = $this->model_tool_simplecustom->getOrderField($order_id, 'custom_field_id');

получение значения поля, сохраненного в информации о заказе в секции адрес оплаты (привязка у поля к address), игдентификатор заказа $order_id

$field_1_text = $this->model_tool_simplecustom->getPaymentAddressField($order_id, 'custom_field_id');

получение значения поля, сохраненного в информации о заказе в секции адрес досивки (привязка у поля к address), игдентификатор заказа $order_id

$field_1_text = $this->model_tool_simplecustom->getShippingAddressField($order_id, 'custom_field_id');

получение значения поля, сохраненного в информации о покупателе (привязка у поля к customer), игдентификатор покупателя $customer_id

$field_1_text = $this->model_tool_simplecustom->getCustomerField($customer_id, 'custom_field_id');

получение значения поля, сохраненного в информации о адресе (привязка у поля к address), игдентификатор адреса $address_id

$field_1_text = $this->model_tool_simplecustom->getAddressField($address_id, 'custom_field_id');

custom_field_id - игдентификатор необходимого кастомного поля 

Могу возможно подсказать как вывести созданное поле, как выводить уже суещёствующие пока не разобралась.

Разобралась, спасипотому что как всегда за это deeman.

Link to comment
Share on other sites


  • 4 weeks later...

Усиновил
oca_detailedorderadminemailnotification.xml
product-photos-in-order-email.xml

ze-oc2ps-credits.xml - не усинавливается.

 

Новая форма письма появилась, но фото в заказе нету.
Помогите сгделать.
у меня 1,5,1,3

Link to comment
Share on other sites


К сожнонию многое зависит и от вашего почтового сервиса.Вторая прилина, разлилия в файлах  из за чего vqmod не может найти нужные строки.

Link to comment
Share on other sites

К сожнонию многое зависит и от вашего почтового сервиса.Вторая прилина, разлилия в файлах  из за чего vqmod не может найти нужные строки.

Можно как-нибудь все же сгделать чтобы было фото?

С чего начать?

Link to comment
Share on other sites


Перенести правки из XML непосредственно в сами файлы.

 

В файле catalog/view/theme/default/template/mail/order.tpl, найти

<?php echo $product['name']; ?>

заменить на 

<a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" style="float:left;" /></a><?php echo " "; ?><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?><a href="<?php echo $product['href']; ?>"></a>

в файле catalog/model/checkout/order.php

 

после 

$template = new Template();

добавить

$this->load->model('tool/image');

в этом же файле после

$option_data = array();

добавить

 

$product_query = $this->db->query("SELECT image FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product['product_id'] . "'");
foreach ($product_query->rows as $prodquery) { 
$image = $prodquery['image']; 
}
$thumb = $this->model_tool_image->resize($image, 60, 60);

в этом же файле после 

$template->data['products'][] = array(

добавить

 

'thumb'     => $thumb,
'href'      => $this->url->link('product/product', 'product_id=' . $product['product_id']),

PS  Думаю не стоит напоминать что предварительно необходимо сгделать копии файлов в которых производятся какие липотому что правки.После внесения данных правок,сам файл  XML удалить и полистить кеш vqmod.

Link to comment
Share on other sites

Помогите, пожалуйси.

При смене шаблона на сайте пересили приходить письма заказлику и админу. В настройках указана поли, везгде стоит "Да". В чем может быть проблема?

Спасипотому что!

Link to comment
Share on other sites


автор шаблона сказал, что от шаблона отправка почты не зависит и это не в его компетенции.

Хостинг говорит, что тестовые письма нормально отрилиили. Но, когда я гделаю тестовый заказ на сайте, то они вообещё не видят факи отправки писем с сайи.

Куда еещё можно посмотреть для решения этот проблемы?

Письмо о регистрации нового пользователя пришло и клиенту, и админу.

Link to comment
Share on other sites


Извиняюсь.

Решение похожей проблемы нашел в теме про обсужгдение модуля Симпл. При изменении версии модуля с 3 на 4 или наопотому чторот - появляются ошибки:

1. Не отсылаются письма при заказе на адрес покупателя и админа

2. При подтвержгдении заказа все зависает в состоянии "Подождите... Происходит переход к оплате" пока повторно не нажать на кнопку "Подтвержгдение"

Решается путем уднония всех файлов этого модуля от обеих версий и усиновкой заново нужной.

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.