Есть ли способ изменить эскизы товаров в корзине?


Я использую следующий код для добавления товаров в корзину вручную.

Следующий код работает нормально, за исключением того, что я хотел бы изменить эскизы товаров в корзине.

Может ли кто-нибудь помочь мне с миниатюрой? Вот мой код.

$session = Mage::getSingleton('customer/session');

// Get cart instance
$cart = Mage::getSingleton('checkout/cart');
$cart->init();

// Add a product with custom options
$productId = 3;
$productInstance = Mage::getModel('catalog/product')->load($productId);
$param = array(
    'product' => $productInstance->getId(),
    'qty' => 1
);
$request = new Varien_Object();
$request->setData($param);
$cart->addProduct($productInstance, $request);

// update session
$session->setCartWasUpdated(true);

// save the cart
$cart->save();
Author: user1897581, 2015-05-24

2 answers

Вы можете попробовать так:

$product->getMediaUrl( $product->getImage() ); //getSmallImage(), getThumbnail()

Иногда, хотя у вас есть только одно изображение, и вы хотите установить все размеры для одного и того же изображения, например:

if (!$product->hasImage()) continue;
    if (!$product->hasSmallImage()) $product->setSmallImage($product->getImage());
    if (!$product->hasThumbnail()) $product->setThumbnail($product->getImage());
    $product->save();

И если вы хотите увидеть, к каким данным вы можете получить доступ в массиве:

var_dump(array_keys($product->getData()));
 0
Author: Tim Hallman, 2015-05-24 13:00:37

Ознакомьтесь с шаблонами визуализации в app/design/frontend/rwd/default/template/checkout/cart/render

В качестве примера для простого продукта (взято из app/design/frontend/rwd/default/template/checkout/cart/render/simple.phtml):

<td>
<a href="<?php echo $this->getItemUrl($_item) ?>" title="<?php echo $this->escapeHtml($this->getItemName($_item)) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($this->getItemProductForThumbnail($_item), 'thumbnail')->resize(75); ?>" width="75" height="75" alt="<?php echo $this->escapeHtml($this->getItemName($_item)) ?>" /></a>
</td>

Для вас интересен параметр 'thumbnail' в методе инициализации помощника по изображениям каталога. Это относится к настройкам на вкладке изображения ваших продуктов, где вы можете определить различные изображения для базового изображения, небольшого изображения и миниатюры. Загрузите другое изображение и скопируйте шаблон визуализации в свой пакет/тему, чтобы настроить параметр.

Даже проще: Загрузите изображение в администраторе Magento и выберите его в качестве уменьшенного изображения, и оно появится при оформлении заказа (и везде, где используется уменьшенное изображение).

 1
Author: Anna Völkl, 2015-05-24 15:00:16