название продукта описание компания, использующая корзину сессия magento

Я пытаюсь получить информацию о продукте в onepage.php, но мне это не удалось. Я пробовал много кодов, но я не понимаю. Нужно ли мне получать его с помощью сессий? кто-нибудь знает код, как я могу получить информацию о продукте на странице onepage.php?

Хорошо, сначала, когда я нажимаю «Купить продукт», он перенаправляется на страницу «checkout/cart/», что означает «cart.phtml» и «cart.php», а на этой странице у меня есть название продукта, цена, общая сумма. Хорошо, после того, как я нажму Procced для оформления заказа, он перенаправляется на checkout/onepage/... onepage.php и onepage.phtml

хорошо, теперь я установил электронное письмо в onepage.php, которое всякий раз, когда пользователь нажимает кнопку Procced to checkout на странице корзины, когда загружается onepage.php, он будет отправлять электронное письмо.

Что ж, теперь в электронном письме я хотел бы добавить информацию о продукте, например, название продукта, количество, название компании. Здесь я выполнил все шаги, но не могу получить информацию о продукте. Продукт будет продуктом, выбранным пользователем для оформления заказа.

here is my simple email template:
    $to = "$email";
    $from = "[email protected]";
    $subject = "email test";
    //begin of HTML message
    $message = <<<EOF
<html>
  <body bgcolor="#DCEEFC">
    <center>
        <b>email test</b> <br>
        <h1><font color="red">Your Coupon Code:</font>$letters$random_chars<br></h1>

<h1>Product Name : $productname</h1>
<h1>Company Name : $comname</h1>
    </center>

  </body>
</html>
EOF;
$headers  = "From: $from\r\n";
$headers .= "Content-type: text/html\r\n";


mail($to, $subject, $message, $headers);

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


person Man in black    schedule 15.03.2012    source источник


Ответы (1)


Продукт, доступный при оформлении заказа, не содержит всех атрибутов. Вы должны определить, какие атрибуты будут доступны в разделе оформления заказа/корзины из config.xml

<sales>
  <quote>
    <item>
      <product_attributes>
        <product_attribute_1/>
        <product_attribute_2/>
      </product_attributes>
    </item>
  <quote>
<sales>

Фокус принадлежит Тиму Милхаусу из Brim LLC

EDIT: Включите переменные в транзакционные электронные письма... Допустим, вы создали атрибут продукта с именем product_origin.

  • Создайте шаблоны транзакционной электронной почты и измените их следующим образом:
<html>
   <h1>Dear {{htmlescape var=$order.getCustomerName()}}</h1>
   <p>Thank you choosing {{var store.getFrontendName()}}</p>
   <h2>Here is the order details</h2>
   {{block type='core/template' area='frontend' template='/emails/product_info.phtml' order=$order}}
</html>
  • Создать шаблон продукта product_info.phtml
# File path : /app/design/frontend/[YOUR_NAMESPACE]/[YOUR_THEME]/template/emails/product_info.phtml
 <?php $_order = $this->getOrder(); ?>
 <table>
   <tr>
     <td>Product Name</td>
     <td>Price</td>
     <td>Product Origin (Attribute)</td>
   </tr>
   <?php foreach($_order->getAllItems() as $_item): ?>
   <tr>
     <td><?php echo $_item->getName() ?></td>
     <td><?php echo $_order->formatPrice($_item->getPrice()) ?></td>
     <td>
        <?php
           $_product = Mage::getModel('catalog/product');
           $_product ->load($_item->getProductId());
           echo $_product->getProductOrigin(); // product attribute, if attribute name productorigin, therefore should be getProductorigin
        ?>
     </td>
   </tr>
   <?php endforeach ?>
 </table>
person Oğuz Çelikdemir    schedule 15.03.2012
comment
мне просто нужно получить название продукта, название компании конкретного продукта, который я собираюсь купить на onpage.php. Потому что я отправляю электронное письмо со страницы onepage.php и должен указать название продукта. Можете ли вы описать более четко - person Man in black; 15.03.2012
comment
Я не правильно понял. Если вы получаете только те сведения о продукте, которые доступны в корзине, вы можете это сделать. Потому что, название продукта, количество и т.д. уже доступны. - person Oğuz Çelikdemir; 15.03.2012
comment
ну не делается. Я думаю, это была моя ошибка, я не мог заставить вас понять. Хорошо, позвольте мне предоставить вам полную информацию: \r\n; $headers .= Тип содержимого: text/html\r\n; почта($кому,$тема,$сообщение,$заголовки); Здесь я хочу получить название продукта в файле onepage.php, и это моя электронная почта, которую я включил в файл onepage.php. У меня нет проблем с отправкой электронной почты, но я не могу получить название продукта. - person Man in black; 15.03.2012
comment
‹span class= product-description style=› ‹?php if ($this-›hasProductUrl()):?› ‹?php echo $this-›htmlEscape($this-›getProductName()) ?› ‹?php else : ?› ‹?php echo $this-›htmlEscape($this-›getProductName()) ?› ‹?php endif; ?› ‹/span›‹/div› это класс, который показывает название продукта, но когда я пробую его в onepage.phtml или onepage.php, ничего не появляется - person Man in black; 15.03.2012
comment
Извините за мой плохой английский . я отредактировал свой вопрос со всеми подробностями. Пожалуйста, проверьте, и если вы можете мне помочь, спасибо - person Man in black; 15.03.2012