Próbuję uzyskać obrazy produktów do szablonu wiadomości e-mail z fakturą. Użyłem poniżej kodu. Ale otrzymuję tylko symbol zastępczy Magento w szablonie e-maila.
<td>
<?php
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product_id = $_item->getOrderItem()->getProduct();
$product = $objectManager->get('Magento\Catalog\Model\Product')->load($product_id);
$_imagehelper = $objectManager->get('Magento\Catalog\Helper\Image');
$image_url = $_imagehelper->init($product, 'cart_page_product_thumbnail')->getUrl();
?>
<img src="<?php echo $image_url; ?>" alt="<?php echo $product->getName(); ?>" />
</td>
Odpowiedzi:
Znalazłem rozwiązanie, ale otrzymuję miniaturę nadrzędną, lubię ją otrzymywać, jeśli produkt wybrał opcję Swatch, ta opcja Swatch musi zostać wyświetlona.
przykład: jeśli wybiorę kolor czerwony, obraz próbki koloru czerwonego musi zostać wyświetlony.
źródło
Mam nadpisanie
DefaultInvoice
AKTUALIZACJA
Więcej referencji
Odniesienie 1 , Odniesienie 2 , Odniesienie 3
źródło
Możesz zamienić następujący wiersz w swoim kodzie
Z następującą linią
Dzięki temu możesz uzyskać odpowiedni prosty produkt konfigurowalnego produktu.
źródło
Myślę, że powinieneś spróbować
cart_page_product_thumbnail
zamiastproduct_thumbnail_image
w swoim kodzie obrazu produktu.Twój kod powinien być taki.
Użyłem powyższego kodu, aby wyświetlić obraz produktu w szablonie wiadomości e-mail i działa dobrze z konfigurowalnymi produktami. i myślę, że działa to również w przypadku szablonu wiadomości e-mail z fakturą.
Widziałem też tak wielu użytkowników korzystających,
cart_page_product_thumbnail
sprawdź poniższy link referencyjny.Mam nadzieję, że to pomoże!
źródło