[Решено] Изображение и ссылка на товар в теле письма о заказе

  • 18 Ответов
  • 7046 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

zmancer

  • *****
  • 527
  • 57
Вчера мне нужно было реализовать данную задачу, покопавшись на форумах ничего подобного не нашел, начал копать сам, у меня все получилось теперь в письмах есть  картинка товара и ссылка на него!
идем в components/com_virtuemart/themes/default/templates/order_emails/confirmation_email.tpl.php
Код
<?php
// CREATE THE LIST WITH ALL ORDER ITEMS

$dbo=&JFactory::getDBO();
while($dboi->next_record()) {
$sku=$ps_product->get_field($dboi->f("product_id"), "product_sku");
$sql="SELECT a.product_full_image FROM #__vm_product AS a WHERE a.product_sku='".$sku."'"; //ВЫБОРКА ИЗОБРАЖЕНИЯ
$dbo->setQuery($sql);
$fullimg=$dbo->loadResult();
$my_qty = $dboi->f("product_quantity");
if ($auth["show_price_including_tax"] == 1) {
$price = $dboi->f("product_final_price");
$my_price = $CURRENCY_DISPLAY->getFullValue($dboi->f("product_final_price"), '', $db->f('order_currency'));
} else {
$price = $dboi->f("product_item_price");
$my_price = $CURRENCY_DISPLAY->getFullValue($dboi->f("product_item_price"), '', $db->f('order_currency'));
}
$my_subtotal = $my_qty * $price;
$sub_total += $my_subtotal;
//тащим id чтобы потом подставить к ссылке
$db->query( "SELECT product_id FROM #__{vm}_product WHERE product_name='".$dboi->f("product_name")."'");
      $db->next_record();
      $product_id = $db->f("product_id");
?>
<tr class="Stil1">
<td><?php echo $my_qty ?></td>
//ЗДЕСЬ ВАМ НЕОБХОДИМО ИЗМЕНИТЬ URL НА СВОЙ
<td> <a href="http://paffos.ru/component/virtuemart/?page=shop.product_details&product_id=<?php echo $product_id ?>"><?php $dboi->p("product_name")?> <?php echo ($dboi->f("product_attribute")? ' ('.$dboi->f("product_attribute").')' : ''); ?></a>
<img src="<?php echo JURI::root().'components/com_virtuemart/shop_image/product/'.$fullimg;?>" width= "150" height="auto" /></td>
<td><?php echo $sku; ?></td>
<td><?php echo $my_price ?></td>
<td><?php echo $CURRENCY_DISPLAY->getFullValue($my_subtotal, '', $db->f('order_currency'))?></td>
</tr>
В общем как то так, думаю много кому пригодиться
ниже прикрепил свой файлик полностью изменить необходимо лишь УРЛ (href="http://ваш.урл продукта без id<?php echo $product_id ?>
PS Это решение тестировалось на VirtueMart 1.1.5 и выше, на ветке 1.0.X не работает
« Последнее редактирование: 03.08.2011, 17:56:33 от zmancer »

*

zmancer

  • *****
  • 527
  • 57
Кому помог, не забываем поощрять, хотя бы плюсиком!

[вложение удалено Администратором]

*

dtokar

  • ***
  • 51
  • 1
Кому помог, не забываем поощрять, хотя бы плюсиком!

Спасибо, пригодилось !

*

elsov

  • ***
  • 39
  • 0
Был бы очень признателен. Нужно для ветки 1.0

*

dkmaster

  • **
  • 12
  • 0
Здрасти.
У меня вопрос по аналогии с Вашей темой (если можно так сказать).
Суть в чем, мне вместо добавления картинки и ссылки нужно добавить поле "Категория" где будет соответственно указываться категория к которой относится товар.


вот поле я добавил, но категория не выводится. И это понятно, т.к. я не могу понять что надо добавить в коде.
Не подскажите?

Просто по названию нельзя определить что это такое за товар ))) а очень надо.
Понятно что можно и переписать названия товара, дописав что это например втулка, но перелопатить несколько тысяч наименований довольно сложно и долго.

*

videocd

  • ***
  • 29
  • 0
внес изменения в свой файл, ссылки появились и работают корректно но вот картинки не отображаются   :(    выводятся просто пустые рамочки!  в чем может быть дело?

*

zmancer

  • *****
  • 527
  • 57
Это решение тестировалось на VirtueMart 1.1.5 и выше, на ветке 1.0.X не работает
Попробуйте свой файлик заменить на тот, что я приложил, возможно вы где то ошиблись.

*

videocd

  • ***
  • 29
  • 0
Проверил, все нормально работает! Спасибо.
Просто не все браузеры открывают картинки в теле письма.

*

eSniper

  • **
  • 20
  • 0
Подскажите как добавить в шапку письма поля "Категория" и "Описание" и соответственно данные к этим полям что бы выводились  VM 1.1.7
Может перейдем на ты? А то мне в морду дать вам не удобно.


*

RoooMka

  • ***
  • 35
  • 0
  • RoooM
Подскажите, можно такую задачу решить для Virta 1.1.4  :D
5 плюсов поставлю!
Спасибо!

*

RoooMka

  • ***
  • 35
  • 0
  • RoooM
Превью приходит и в 1.1.4, только не сразу увидел сплюснутый джпег, было:
<img src="<?php echo JURI::root().'components/com_virtuemart/shop_image/product/'.$fullimg;?>" width= "150" height="auto" /></td>
заменил на
<img src="<?php echo JURI::root().'components/com_virtuemart/shop_image/product/'.$fullimg;?>" width= "150" height="150" /></td>
Спасибо!
      

*

Shadow

  • ***
  • 87
  • 0
  • Я не волшебник, я только учусь! Не бейте тапкой))
Уважаемый автор!

Простите если вопрос из разряда очень глупых, просто сделала как было указано в посте, и теперь в теле письма появляется превьюшка, а рядом ссылочка с названием товара, но ведет она не на тот товар который нужен. Понимаю, что что-то сделала не так, но что)

Заранее благодарю!

*

niggatub

  • ****
  • 205
  • -1
Здрасти.
У меня вопрос по аналогии с Вашей темой (если можно так сказать).
Суть в чем, мне вместо добавления картинки и ссылки нужно добавить поле "Категория" где будет соответственно указываться категория к которой относится товар.
Аналогичная проблема. Тоже необходимо вывести "категорию"

UPD: Решение тут. Сделал сам.
« Последнее редактирование: 15.05.2012, 13:23:20 от niggatub »

Подскажите как вывести картинку в админке в заказе
http://joomlaforum.ru/index.php/topic,217442.msg1139971.html#msg1139971

*

Demias

  • ****
  • 245
  • 2
Почему-то не работает ссылка на товар, даже при замене оригинального файла файлом автора статьи... :(

*

RoooMka

  • ***
  • 35
  • 0
  • RoooM
Стоит расширение CUSTOM ATTRIBUTES для закачки файла юзера + к заказу. Информация какой файл добавлен к заказу появляется в письме, но чтобы этот файл выкачать приходится лезть на ФТП в папку, в которую настроен доп атрибут. Может кто знает, как ссылкой сделать имя файла, чтобы из письма заказа сразу скачивать?
Вот кусок кода, где это втыкается:
<tr class="Stil1">
      <td><?php echo $my_qty ?></td>
      <td>
<img src="<?php echo JURI::root().'components/com_virtuemart/shop_image/product/'.$fullimg;?>" width= "100" height="95" /><br />
<a href="http://www.4ashka.com.ua/component/virtuemart/?page=shop.product_details&product_id=<?php echo $product_id ?>"><?php $dboi->p("product_name")?></a><br />
<?php echo ($dboi->f("product_attribute")? ' ('.$dboi->f("product_attribute").')' : ''); ?><br />
<?php echo VUOutput::UploadInfo ( $dboi->f("product_attribute"), 'mail' ); ?>
      </td>
      <td><?php echo $sku; ?></td>
      <td><?php echo $my_price ?></td>
      <td><?php echo $CURRENCY_DISPLAY->getFullValue($my_subtotal, '', $db->f('order_currency'))?></td>
   </tr>
« Последнее редактирование: 29.08.2012, 20:55:08 от RoooMka »

*

AnutaK

  • *
  • 1
  • 0
PS Это решение тестировалось на VirtueMart 1.1.5 и выше, на ветке 1.0.X не работает

У меня VirtueMart 1.1.9, для него это решение не подходит??

У меня почему-то id товара неверный подставляется в ссылку.   :-( 

*

Pustota

  • ***
  • 28
  • 0
Чтобы работало в 1.1.9 нужно картинку прописать так:
<img src="<?php echo JURI::root().'components/com_virtuemart/shop_image/product/'.$dboi->f("product_thumb_image")?>" width="150" />