Aggiungi immagine del prodotto in Nuovo ordine Email
-
13-12-2019 - |
Domanda
Voglio aggiungere un'immagine del prodotto nel modello di posta elettronica del nuovo ordine.
.
Come posso fare questo?
Sto usando il mio modello personalizzato e voglio anche l'immagine del prodotto.
Quindi, come posso scattare un'immagine sul mio modello personalizzato
Il modello personalizzato da cui ho creato,
system->configuration->transnational emails
. Soluzione
- .
-
primo passo -
Secondo passo
Modifica il file: app/design/frontend/YOUR_PACKAGE/YOUR_THEME/template/email/order/items.phtml
Dopo questa riga:
<th align="left" bgcolor="#EAEAEA" style="font-size:13px; padding:3px 9px"> <?php echo $this->__('Sku') ?></th>
.
Aggiungi questo:
<th align="left" bgcolor="#EAEAEA" style="font-size:13px; padding:3px 9px"><?php echo $this->__('Image') ?></th>
.
Modifica il file: app/design/frontend/YOUR_PACKAGE/YOUR_THEME/template/email/order/items/order/default.phtml
.Nota: Se questo file non esiste nel pacco, puoi trovare questo file dal pacchetto base (
app/design/frontend/base/default/template/email/order/items/order/default.phtml
)
Dopo questa riga:
<td align="left" valign="top" style="font-size:11px; padding:3px 9px; border-bottom:1px dotted #CCCCCC;"><?php echo $this->escapeHtml($this->getSku($_item)) ?></td>
.
Aggiungi questo:
<img src="<?php echo Mage::getModel('catalog/product_media_config')
->getMediaUrl($_product->getThumbnail()); ?>" width="135" height="135" alt="<?php echo $_item->getName() ?>" />
.
.
.
Per il display del genitore del prodotto configurabile del prodotto:
Modifica il file app/design/frontend/YOUR_PACKAGE/YOUR_THEME/template/email/order/items/order/default.phtml
Dopo questa riga:
<?php $_order = $this->getItem()->getOrder() ?>
.
Aggiungi questo:
<?php
if ($_item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
$parentId = Mage::getModel('catalog/product_type_configurable')
->getParentIdsByChild($_item->getProductId());
$_product = Mage::getModel('catalog/product')
->setStoreId($_item->getOrder()->getStoreId())
->load($parentId);
} else {
$_product = Mage::getModel('catalog/product')
->setStoreId($_item->getOrder()->getStoreId())
->load($_item->getProductId());
}
?>
.
Allora, se non già fatto, dopo questa riga:
<td align="left" valign="top" style="font-size:11px; padding:3px 9px; border-bottom:1px dotted #CCCCCC;"><?php echo $this->escapeHtml($this->getSku($_item)) ?></td>
.
Aggiungi questa linea:
<img src="<?php echo Mage::getModel('catalog/product_media_config')
->getMediaUrl($_product->getThumbnail()); ?>" width="135" height="135" alt="<?php echo $_item->getName() ?>" />
.Altri suggerimenti
(Magento 2 Get Immagine prodotto per ID in ordine)
Segui il codice dopo:
$_item = $block->getItem();
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$_product = $objectManager->get('Magento\Catalog\Model\Product')->load($_item->getProductId());
$imageHelper = $objectManager->get('\Magento\Catalog\Helper\Image');
$image_url = $imageHelper->init($_product, 'product_page_image_small')->setImageFile($_product->getImage())->resize(100, 100)->getUrl();
.
100% di successo :)! Si prega di vedere link !Spero di aiutarti!
$_productThumbnail = '';
if ($_item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE && count($_item->getChildrenItems()) > 0) {
$_productThumbnail = $_item->getChildrenItems()[0]->getProduct()->getThumbnail();
}
if ($_productThumbnail == '' || $_productThumbnail == 'no_selection')
{
$_productThumbnail = $_item->getProduct()->getThumbnail();
}
.
.e poi
<img src="<?php echo Mage::getModel('catalog/product_media_config')
->getMediaUrl($_productThumbnail ); ?>" width="135" height="135" alt="<?php echo $_item->getName() ?>" />
. My Solution Esempio:
.Email / ordine / articoli / ordine / default.phtml
After Line <?php $_order = $this->getItem()->getOrder() ?>
Insert:
<?php
if ($_item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
$_product = Mage::getModel('catalog/product')->loadByAttribute('sku',$_item->getSku());
$_product_image = (string) Mage::helper('catalog/image')->init($_product, 'thumbnail')->resize(30);
} else {
$_product = $_item->getProduct();
$_product_image = Mage::getModel('catalog/product_media_config')->getMediaUrl($_product->getThumbnail());
}
?>
.
E da qualche parte inserire qualcosa del genere:
<p class="product-name"><img src="<?php echo $_product_image; ?>" width="35" height="35" alt="<?php echo $_item->getName() ?>" /><?php echo $this->escapeHtml($_item->getName()) ?></p>
.